R:从阵列中有效地移除单个维度

时间:2015-10-09 16:07:52

标签: arrays r reshape2

我正在寻找一种从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

1 个答案:

答案 0 :(得分:9)

听起来你正在寻找drop(),“删除[s]只有一个级别的数组的维度。”

drop(array3d)
#       [,1] [,2]
# [1,]    0    0
# [2,]    0    0