R - 如何根据列中的值选择行

标签 r subset

我有一个数据框,数据,如下所示:

head(data)
      code       x     y        z        new
1   123456       1     2        0     654321 
2   999999       2     3        0     543210
3   000998       3     4        0     887765
4   106813       4     6        0         NA
5   222345       5     6        0     564738
6   106815       6     5        0         NA
7   887765       7     1        1     000998

我正在尝试确保保留链接的数据。例如,如果我通过对数据进行子集化来创建一个新矩阵,以便它只保留带有 x < 4 的行:

data2 <- subset(data,x<4)
data2
    Code x y z    new
1 123456 1 2 0 654321
2 999999 2 3 0 543210
3 000998 3 4 0 887765

然后,我想添加子集数据 (data2) 中的行的 new 值等于原始数据中的行的 code 值的任何行,如下所示:

data3
    Code x y z    new
1 123456 1 2 0 654321
2 999999 2 3 0 543210
3 000998 3 4 0 887765
4 887765 7 1 1 000998

最佳答案

这不是最漂亮的,但它有效

rbind(data2, merge(data, data2[,"new", drop = FALSE], by.x = "code", by.y = "new"))

关于R - 如何根据列中的值选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34075978/

相关文章:

perl - 只从 perl 中的列表中获取某些值

r - dplyr - 按组大小过滤

r - 检查向量中的连续元素

删除所有列中带有 NA 的尾随(最后)行

r - naiveBayes为什么会在R中返回所有NA以进行多类分类?

r - dplyr arrangement 不按组排列

regex - R:跨两个数据帧的名字和姓氏组合(即两列)的不区分大小写匹配

r - 在查找表中使用多个引用值

r - 在 R 中按行有条件地连接数据帧

date - Julia @子集日期