R:根据另一个数据帧过滤行

时间:2014-01-10 15:05:32

标签: r dataframe

我有两个数据框:

>dfMapping
Name Number
a    10
b    20
c    15


>dfMapping2
Name Total Type 
a    112    x
a    20     y
a    1      z
b    10     x
b    120    z
c    11     z
c    100    x

来自dfMapping2我只想要那些dfMapping2$Total > dfMapping$Number和最后Total应该有Total - dfMapping$Number的行。所以,这里的结果应该是:

>result
Name  Total  Type
a     102    x
a     10     y
b     100    z
c     85     x

有人可以帮我吗?

感谢。

1 个答案:

答案 0 :(得分:1)

这是斯蒂芬的解决方案。第1步:合并数据帧。第2步:根据条件进行过滤。

df <- merge(dfMapping, dfMapping2)
df <- with(df, df[Total > Number,])

生成:

  Name Number Total Type
1    a     10   112    x
2    a     10    20    y
5    b     20   120    z
7    c     15   100    x
相关问题