如何在 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

更新於: 2021-11-12

2K+ 閱讀量

開啟你的 事業

完成課程獲得認證

開始學習
廣告