1
我試圖生成四個變量的所有組合,其中每個變量是0和10之間的整數。有沒有一種簡單的方法在R中做到這一點?計算在一個範圍內的所有可能的組合R
X | Y | Z | W
-------------
0 | 0 | 0 | 0
1 | 0 | 0 | 0
1 | 1 | 0 | 0
1 | 1 | 1 | 0
. . . .
. . . .
. . . .
10|10 |10 |10
我試圖生成四個變量的所有組合,其中每個變量是0和10之間的整數。有沒有一種簡單的方法在R中做到這一點?計算在一個範圍內的所有可能的組合R
X | Y | Z | W
-------------
0 | 0 | 0 | 0
1 | 0 | 0 | 0
1 | 1 | 0 | 0
1 | 1 | 1 | 0
. . . .
. . . .
. . . .
10|10 |10 |10
所有組合可以用table
完成。轉換爲數據框會產生你正在尋找的東西。
> as.data.frame(table(W=0:10, X=0:10, Y=0:10, Z=0:10))[, c('W','X','Y','Z')]
W X Y Z
1 0 0 0 0
2 1 0 0 0
3 2 0 0 0
4 3 0 0 0
5 4 0 0 0
6 5 0 0 0
7 6 0 0 0
8 7 0 0 0
9 8 0 0 0
10 9 0 0 0
11 10 0 0 0
12 0 1 0 0
13 1 1 0 0
...
如果W
,X
,Y
和Z
存在
expand.grid(W = W, X = X, Y = Y, Z = Z)
W X Y Z
1 0 0 0 0
2 1 0 0 0
3 2 0 0 0
4 3 0 0 0
5 4 0 0 0
6 5 0 0 0
7 6 0 0 0
8 7 0 0 0
9 8 0 0 0
10 9 0 0 0
11 10 0 0 0
12 0 1 0 0
13 1 1 0 0
14 2 1 0 0
15 3 1 0 0
...
的確非常優雅! – krlmlr