使用 R 語言從另一個向量中減去向量中的所有值。


在 R 中,要從另一個向量中減去向量中的所有值,我們可以使用帶減號的 sapply 函式。

例如,如果我們有兩個向量 X 和 Y,並且我們想從 X 中的所有值中減去 Y 中的所有值,那麼我們可以使用下面給出的命令:

sapply(X,"-",Y)

示例 1

以下程式碼片段建立了一個示例資料框:

x1<-1:10
y1<-10:1
sapply(x1,"-",y1)

輸出

如果執行上面給出的程式碼片段,它將生成以下輸出:

     [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,] -9   -8   -7   -6   -5   -4   -3   -2   -1    0
 [2,] -8   -7   -6   -5   -4   -3   -2   -1    0    1
 [3,] -7   -6   -5   -4   -3   -2   -1    0    1    2
 [4,] -6   -5   -4   -3   -2   -1    0    1    2    3
 [5,] -5   -4   -3   -2   -1    0    1    2    3    4
 [6,] -4   -3   -2   -1    0    1    2    3    4    5
 [7,] -3   -2   -1    0    1    2    3    4    5    6
 [8,] -2   -1    0    1    2    3    4    5    6    7
 [9,] -1    0    1    2    3    4    5    6    7    8
[10,]  0    1    2    3    4    5    6    7    8    9

示例 2

以下程式碼片段建立了一個示例資料框:

x2<-sample(0:9,10)
x2

如果執行上面給出的程式碼片段,它將生成以下輸出:

[1] 2 3 0 8 5 6 9 4 1 7

要在 R 中從另一個向量中減去向量中的所有值,請將以下程式碼新增到上述程式碼片段中:

x2<-sample(0:9,10)
y2<-sample(0:9,20,replace=TRUE)
y2

如果執行上面給出的程式碼片段,它將生成以下輸出:

[1] 9 9 6 9 7 1 8 3 6 4 8 5 2 0 0 9 9 3 2 2

要在 R 中從另一個向量中減去向量中的所有值,請將以下程式碼新增到上述程式碼片段中:

x2<-sample(0:9,10)
y2<-sample(0:9,20,replace=TRUE)
sapply(x2,"-",y2)

輸出

如果將以上所有程式碼片段作為單個程式執行,它將生成以下輸出:

     [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,] -7   -6   -9   -1   -4   -3    0   -5   -8   -2
 [2,] -7   -6   -9   -1   -4   -3    0   -5   -8   -2
 [3,] -4   -3   -6    2   -1    0    3   -2   -5    1
 [4,] -7   -6   -9   -1   -4   -3    0   -5   -8   -2
 [5,] -5   -4   -7    1   -2   -1    2   -3   -6    0
 [6,]  1    2   -1    7    4    5    8    3    0    6
 [7,] -6   -5   -8    0   -3   -2    1   -4   -7   -1
 [8,] -1    0   -3    5    2    3    6    1   -2    4
 [9,] -4   -3   -6    2   -1    0    3   -2   -5    1
[10,] -2   -1   -4    4    1    2    5    0   -3    3
[11,] -6   -5   -8    0   -3   -2    1   -4   -7   -1
[12,] -3   -2   -5    3    0    1    4   -1   -4    2
[13,]  0    1   -2    6    3    4    7    2   -1    5
[14,]  2    3    0    8    5    6    9    4    1    7
[15,]  2    3    0    8    5    6    9    4    1    7
[16,] -7   -6   -9   -1   -4   -3    0   -5   -8   -2
[17,] -7   -6   -9   -1   -4   -3    0   -5   -8   -2
[18,] -1    0   -3    5    2    3    6    1   -2    4
[19,]  0    1   -2    6    3    4    7    2   -1    5
[20,]  0    1   -2    6    3    4    7    2   -1    5

示例 3

以下程式碼片段建立了一個示例資料框:

x3<-rpois(2,5)
x3

如果執行上面給出的程式碼片段,它將生成以下輸出:

[1] 5 2

要在 R 中從另一個向量中減去向量中的所有值,請將以下程式碼新增到上述程式碼片段中:

x3<-rpois(2,5)
y3<-rpois(20,1)
y3

如果執行上面給出的程式碼片段,它將生成以下輸出:

[1] 0 1 1 0 0 0 1 1 1 0 0 0 2 1 0 1 2 0 1 1

要在 R 中從另一個向量中減去向量中的所有值,請將以下程式碼新增到上述程式碼片段中:

x3<-rpois(2,5)
y3<-rpois(20,1)
sapply(x3,"-",y3)

輸出

如果將以上所有程式碼片段作為單個程式執行,它將生成以下輸出:

   [,1] [,2]
 [1,] 5  2
 [2,] 4  1
 [3,] 4  1
 [4,] 5  2
 [5,] 5  2
 [6,] 5  2
 [7,] 4  1
 [8,] 4  1
 [9,] 4  1
[10,] 5  2
[11,] 5  2
[12,] 5  2
[13,] 3  0
[14,] 4  1
[15,] 5  2
[16,] 4  1
[17,] 3  0
[18,] 5  2
[19,] 4  1
[20,] 4  1

示例 4

以下程式碼片段建立了一個示例資料框:

x4<-sample(1:20,5)
x4

如果執行上面給出的程式碼片段,它將生成以下輸出:

[1] 15 4 9 8 3

要在 R 中從另一個向量中減去向量中的所有值,請將以下程式碼新增到上述程式碼片段中:

x4<-sample(1:20,5)
y4<-sample(1:20,15)
y4

如果執行上面給出的程式碼片段,它將生成以下輸出:

[1] 19 16 1 9 8 4 2 12 3 18 13 5 20 10 6

要在 R 中從另一個向量中減去向量中的所有值,請將以下程式碼新增到上述程式碼片段中:

x4<-sample(1:20,5)
y4<-sample(1:20,15)
sapply(x4,"-",y4)

輸出

如果將以上所有程式碼片段作為單個程式執行,它將生成以下輸出:

     [,1] [,2] [,3] [,4] [,5]
 [1,]  -4  -15  -10 -11  -16
 [2,]  -1  -12  -7   -8  -13
 [3,]  14    3   8    7    2
 [4,]   6   -5   0   -1   -6
 [5,]   7   -4   1    0   -5
 [6,]  11    0   5    4   -1
 [7,]  13    2   7    6    1
 [8,]   3   -8  -3   -4   -9
 [9,]  12    1   6    5    0
[10,]  -3  -14  -9  -10  -15
[11,]   2   -9  -4   -5  -10
[12,]  10   -1   4    3   -2
[13,]  -5  -16 -11  -12  -17
[14,]   5   -6  -1   -2   -7
[15,]   9   -2   3    2 -  3

更新於: 2021年11月8日

3K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.