我想將不同長度的向量綁定在一起。我查了一下this線程,但是從這個我不清楚如何使用append或cbind來創建一個矩陣/列表。綁定可變長度向量R
舉個例子, 讓我們不同長度的2個隨機向量:
> b<-sample(10,5)
> d<-sample(10,10)
他們現在經營cbind會重蹈小載體一切可能,
> cbind(b,d)
b d
[1,] 3 7
[2,] 5 4
[3,] 10 3
[4,] 4 2
[5,] 6 5
[6,] 3 8
[7,] 5 6
[8,] 10 10
[9,] 4 9
[10,] 6 1
如果我嘗試做追加,
> append(b,d)
[1] 3 5 10 4 6 7 4 3 2 5 8 6 10 9 1
它將兩個向量追加到1 。較長的解決方案是將矢量長度保存在不同的矢量中,並使用長度矢量從循環中從該合併矢量中拾取矢量。但有沒有更好的方法來做到這一點?因爲我想把這個更大的矩陣/列表放入一個函數中,如果我不使用這種基於長度矢量的方法,這將變得更容易。
什麼是你想要的輸出? – dayne
矩陣或列表,包含可變長度的向量,我在一個循環內加入。 –
您不能在R中創建鋸齒矩陣。您必須爲丟失的單元格賦予一些值。你可以創建一個向量列表。 'some.list < - list(b = b,d = d)',然後使用列表循環/套用以進行計算。你在用期望的矩陣/列表做什麼? – dayne