我正在尝试学习R(从长远来看这并不容易),而且我习惯于调用AND运算符来检查是否满足两个条件,然后将该输出插入到新列中。与其他所有内容一样,在R中似乎很难做到。在我的问题中,我希望查看标记为“PC”的列是否等于1以及标记为“MF”的列是否等于0。如果是这种情况,我希望R将结果输出(作为1)标记为“WR”的新列。如果“PC”或“MF”中存在任何其他值,我希望R向“WR”输出0。
一些样本数据:
PC MF
1 1
3 1
2 1
4 1
1 1
9 1
2 1
1 1
5 1
5 1
4 0
6 0
8 0
1 1
7 0
1 1
最佳答案
您可以使用ifelse()
语句:
示例数据:
df <- data.frame(PC=c(1,2,3,4,1), MF=c(0,1,1,1,0))
根据两个指定条件创建一个新列
df$WR <- ifelse(df$PC==1 & df$MF == 0, 1, 0)
输出量
> df
PC MF WR
1 1 0 1
2 2 1 0
3 3 1 0
4 4 1 0
5 1 0 1
关于r - R AND运算符到新列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31216315/