R中的ifelse函数创建一个新变量

我在名为“ adoption”的数据集中创建了一个新变量“ house_group”。我希望根据条件将“ house_group”中的条目设置为0或1:如果教育程度(数据集中的另一个变量)为1,则house_group应该为1。但是如果教育程度为2,house_group应该为0。我使用了ifelse函数。但是它为新变量house_group返回NA。变量“教育”中的选项为1和2,它们是绝对不连续的。我希望House_group选项1和0为分类。有帮助吗?

adoption$house_group<-NA

ifelse(adoption$education=="1",adoption$house_group=="1",adoption$house_group=="0")

[1] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
 [32] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
 [63] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
 [94] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[125] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[156] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[187] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[218] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[249] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[280] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[311] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[342] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[373] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[404] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[435] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[466] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[497] NA NA NA NA NA NA NA NA NA NA NA NA NA NA
chunbaise0601 回答:R中的ifelse函数创建一个新变量

这是使用data.frame遮罩解决此问题的一种方法。选择所需的正确行和列,然后替换组中的那些NA。

df <- as.data.frame(sample(1:2,10,replace=TRUE))
colnames(df) <- c('education')
df$house_group <- NA
df[df$education == 1,'house_group'] <- 1
df[df$education == 2,'house_group'] <- 0

使用ifelse逻辑的另一种方法。问题是您在上面的ifelse函数中没有使用赋值运算符“

df$house_group <- ifelse(df$education=="1",1,0)
本文链接:https://www.f2er.com/3136202.html

大家都在问