我有一個150*24階的矩陣A和一個50*24階的第二個矩陣B。我想將矩陣B合并到矩陣A中,使得矩陣B的行是
[1,2,3,4,5,...,50]
在A中合并,使得矩陣B在矩陣A中的位置變為
[5,6,12,13,19,20,26,27,33,34,40,41,47,48,54,55,61,62,68,69,75,76,82,83,...]
所以矩陣A的順序為200*24,我怎么能在 R 中做到這一點?
uj5u.com熱心網友回復:
這是一種方法。首先,創建向量:
n = 150/7
s <- sequence(nvec = rep(2, n), from = (7*1:n)-2)
[1] 5 6 12 13 19 20 26 27 33 34 40 41 47 48 54 55 61 62 68 69 75 76 82 83 89 90 96 97
[29] 103 104 110 111 117 118 124 125 131 132 138 139 145 146
然后,要將多行添加到特定位置,您可以執行以下操作:
for (i in seq(s)){
A <- rbind(A[1:(s[i]-1),], B[i,], A[-(1:(s[i]-1)),])
}
資料
A = array(c(1,0), dim = c(150,24))
B = array(c(1,0), dim = c(50,24))
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/414700.html
標籤:
上一篇:檢查列型別是否存在
下一篇:R中物件的記憶體分配
