我正在寻找一种从R中的数组中删除冗余维度的快速方法,类似于MATLAB中的squeeze()
命令。
现在我结合了melt()
包中的cast()
和reshape2
命令,但应该采用不那么复杂的方法来做同样的事情。
到目前为止我是这样做的:
require(reshape2)
array3d <- array(rep(0,4),dim=c(1,2,2)) # create a 2*2 matrix within a 3-d array
acast(melt(array3d),Var2~Var3) # recover the matrix
答案 0 :(得分:9)
听起来你正在寻找drop()
,“删除[s]只有一个级别的数组的维度。”
drop(array3d)
# [,1] [,2]
# [1,] 0 0
# [2,] 0 0