数据帧中值之间的划分

时间:2015-11-16 18:58:19

标签: r dataframe division

我有两个数据帧(csv表),每个数据帧具有相同的行数(30,000行)和50列。我希望将所有单元格中的df1除以df2,将行名称作为常用名称。

前:

df1

rs sample1 sample1 sample2 sample3 .... sample50

tp1  3        5         7      17       25
tp10  10      25        47     37       45
tp25  110     125       147     370     145

df2

rs sample1 sample1 sample2 sample3 .... sample50

tp1  30        25         7      170      125
tp10  40      125        147     327      145
tp25  210     425       170     570     1457

我想通过在R中使用rs作为公共项来计算这些数据帧之间的每个单元格值。我尝试了以下内容:

df3 <- df1$sample1 / df2$sample2[ match( df1$rs , df2$rs ) ]

但它打印出没有行名的值。

我的问题是,如何为保留行名称的所有列打印值?

1 个答案:

答案 0 :(得分:0)

按照Gregor的建议划分: df3=df1/df2。第一列将成为全部NA,因为它是你的df中的因子。要更正它,只需从df1复制第一列。 df3$rs<-df1$rs