如何将属于不同data.frame的相同名称的列相乘

时间:2012-09-23 18:11:59

标签: r

我遇到了问题......我有两个数据。有很多列的帧和这两个data.frames长度不同,实际上有一行有很多行,第二个data.frame只有一行......但是在两个数据框中都有相同名称的列。现在,我想将匹配的列相互相乘。我没有解决它。请帮帮我。

1 个答案:

答案 0 :(得分:5)

命令

mapply("*", DataFrame1, DataFrame2)
如果要将所有列相乘,

应该有效。如果相关列只是数据框中所有列的子集,我们首先需要识别两个数据帧中存在的列。

mapply("*", DataFrame1[intersect(names(DataFrame1), names(DataFrame2))],
       DataFrame2[intersect(names(DataFrame1), names(DataFrame2))])