我有两个数据帧是10行和11列。我试图使用abind包中的abind命令将数据帧堆叠到一个数组中,但它只是将它们绑定在同一个demission中。有没有更简单的方法将数据框或矩阵转换为数组,或者我只是缺少一个参数来使它正确?任何帮助,将不胜感激。
代码看起来像 array< - abind(df1,df2)
答案 0 :(得分:0)
你可以轻松做到的是:
f <- function(dataframe1, dataframe2){
m1 = data.matrix(dataframe1)
m2 = data.matrix(dataframe2)
vet = vector()
for(i 1:( nrow(m1)*(ncol(m1)) )) { vet[i] = m1[i] }
for(j 1:( nrow(m2)*(ncol(m2)) )) { vet[i+j] = m2[j] }
return(vet)
}
注意:
- i 将在第一个循环结束后保留其值
- 矩阵和矢量是一回事,它只取决于你的感知。我正在做的是利用这个事实。来自2×2矩阵的a(2,2)元素与矢量的(4)相同。