如何在 R 中对两个数据帧的对应值进行相乘?
要在 R 中对来自两个数据帧的对应值进行乘法,我们可以遵循以下步骤:
首先,创建两个数据帧。
然后,使用 mapply 函数来对两个数据帧中对应值进行相乘。
范例
创建第一个数据帧
让我们创建一个如下所示的数据帧:-
df1<-data.frame(x1=rpois(25,2),x2=rpois(25,2)) df1
输出
执行时,上述脚本将生成如下输出(由于随机性的原因,此输出在你的系统上可能会不同)-}
x1 x2 1 2 4 2 0 2 3 0 2 4 1 3 5 0 2 6 2 0 7 2 1 8 1 1 9 2 3 10 2 3 11 2 1 12 2 0 13 2 4 14 1 3 15 0 3 16 1 2 17 0 2 18 2 1 19 2 1 20 5 2 21 1 2 22 2 2 23 3 5 24 2 1 25 2 2
创建第二个数据帧
让我们创建一个如下所示的数据帧:-
df2<-data.frame(y1=rpois(25,2),y2=rpois(25,2)) df2
输出
y1 y2 1 4 0 2 2 1 3 1 4 4 1 1 5 4 1 6 0 2 7 1 4 8 3 3 9 0 5 10 3 3 11 0 2 12 2 3 13 1 2 14 0 0 15 5 2 16 1 0 17 1 2 18 1 2 19 1 3 20 0 1 21 1 3 22 1 1 23 5 5 24 7 1 25 2 4
对两个数据帧中对应值进行乘法
使用 mapply 函数对数据帧 df1 和df2 中对应值进行乘法 -
df1<-data.frame(x1=rpois(25,2),x2=rpois(25,2)) df2<-data.frame(y1=rpois(25,2),y2=rpois(25,2)) mapply(`*`,df1,df2)
输出
x1 x2 [1,] 4 3 [2,] 10 6 [3,] 2 4 [4,] 0 0 [5,] 3 0 [6,] 0 12 [7,] 0 2 [8,] 0 4 [9,] 0 0 [10,] 0 0 [11,] 2 0 [12,] 12 0 [13,] 9 0 [14,] 0 0 [15,] 3 12 [16,] 8 3 [17,] 1 4 [18,] 9 12 [19,] 4 0 [20,] 0 3 [21,] 4 4 [22,] 0 25 [23,] 8 2 [24,] 0 0 [25,] 9 7
广告