R - 扩展多维数组

标签 r

我有一个多维数组 S:

> dim(S)
[1] 45 81  3 52

我想在第三维中添加一列以具有:
> dim(S)
[1] 45 81  **4** 52

并将所有当前数据保存在 S 中。

最佳答案

这是一个潜在的基础 R使用 [<- 的解决方案.

S.new <- array(NA, dim=c(45, 81, 4, 52))
S.new[,,-4,] <- S                 # re-insert on all but the added extent

基本上,您只需重新插入新数组,但指定旧数组中存在的维度。

我们可以用一个小玩具示例来测试它是否有效:
arr <- array(rep(1:4, each=4), dim=c(2, 2, 2, 2))     # toy array
arr.new <- array(NA, dim=c(2, 2, 3, 2))               # increased dimension 3

然后一个简单的步骤就可以做到:
arr.new[,,-3,] <- arr

关于R - 扩展多维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22662105/

相关文章:

r - 使用 R 进行多类逻辑回归

R计算列中值之间的差异

java - 使用 rJava 将 String[][] 从 Java 传递到 R 时出现问题

r - 动态函数和 R 的对象系统

r - 在 R 中从列表创建多个饼图

r - 所有可能的组合(顺序)

r - 计算 R 中的现有排列

r - 有一组点线图和垂直线图的单独图例

R 传单图例 : specify order instead of alphabetical

r - 使用 R 的 Shiny 包的 ui.r 文件中缺少 mainPanel 参数