我想要这个向量
v <- c(111,112,121,122,211,212,221,222)
转换为 3 维矩阵,结果如下所示:
,,1
111 112
121 122
,,2
211 212
221 222
使用
dim(v) <- c(2,2,2)
会产生类似的结构,,1
[,1] [,2]
[1,] 111 121
[2,] 112 122
,,2
[,1] [,2]
[1,] 211 221
[2,] 212 222
我想有一种非常简单的方法可以做到这一点,但我想我在 Google 中使用了错误的关键字。谢谢你的帮助!
最佳答案
很难知道您一般在做什么,但是对于您给定的示例,我看到在 dim(v) <- c(2,2,2)
之后,结果数组与转置/排列的预期输出不同。所以我做
aperm(v, c(2,1,3))
也就是说,我们正在做:
for (i in 1:2) v[,,i] <- t(v[,,i])
关于arrays - 将向量转换为 3 维矩阵,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44749021/