删除R中两个数据帧中的非相似行

时间:2015-07-08 16:04:32

标签: r dataframe

我目前有以下数据框:

> results1
         Estimate  Std. Error     t value     Pr(>|t|)
b32 -0.6715123443 0.075520421 -8.89179819 4.787171e-16
b31 -0.5980455182 0.071979445 -8.30855978 1.844544e-14
b30  0.4416429283 0.093555787  4.72063719 4.567844e-06
b29 -0.4147988548 0.068768882 -6.03178131 8.370384e-09
b28  0.2111363424 0.083077926  2.54142531 1.184315e-02
b10  0.0035913631 0.032030594  0.11212290 9.108450e-01
b9  -0.0014542660 0.005297667 -0.27451065 7.839920e-01
b8   0.0657446181 0.020887493  3.14755913 1.913415e-03
b7  -0.0289678980 0.033560155 -0.86316341 3.891416e-01
b6   0.0002044789 0.006934281  0.02948812 9.765064e-01
b5   0.0034210947 0.011367978  0.30094136 7.637900e-01
b4  -0.0033941213 0.004618224 -0.73494074 4.632865e-01
b1   0.0752108810 0.041080300  1.83082600 6.870121e-02

> betas1
          betas1
b33  0.000000000
b32 -0.503278255
b31  0.347831676
b30 -0.288778978
b29  0.172110468
b28  0.002378104
b27  0.000000000
b26  0.000000000
b25  0.000000000
b24  0.000000000
b23  0.000000000
b22  0.000000000
b21  0.000000000
b20  0.000000000
b19  0.000000000
b18  1.474562637
b16  0.000000000
b15  0.000000000
b14  0.000000000
b13  0.000000000
b12  0.000000000
b11  0.000000000
b10  0.001442897
b9   0.148189325
b8  -0.006230467
b7   0.076707017
b6  -4.921328653
b5  -2.737342353
b4   3.428674629
b3   0.000000000
b2   0.000000000
b1   0.003284209
b34  0.000000000

我试图最终将这些数据框合并在一起;但是,要做到这一点,我试图摆脱betas1中不在结果1中的所有值(即行名称)。我尝试了which函数,它不会出现工作,以及betas1<-results1[!(results1 %in% betas1)],但这似乎也没有奏效。有什么想法吗?谢谢!

1 个答案:

答案 0 :(得分:3)

合并函数将根据指定列的共享值(在本例中为row.names)将两个数据帧合并在一起。

df <- merge(results1, betas2, by="row.names")