我有一个包含两列的数据框:
x <- c(1, 2, 3, 4, NA, 5, 6)
y <- c(1, 2, 4, 5, 0, 5, 6)
my.df <- data.frame(x, y)
我希望保留x != y的行。
我的做法如下:
my.df <- subset(my.df, x != y)
What I expected was:
x y
3 4
4 5
NA 0
我得到的是
x y
3 4
4 5
这是因为,按照奇怪的惯例,
NA != 0
的结果是 NA
。我真的希望保留子集中的
NA
,因为我正在寻找列之间的差异。如何实现这一点?
my.df[is.na(my.df)] <- 999
- James Theobald