【发布时间】:2014-11-23 23:52:45
【问题描述】:
我有这个数组:
T <- array(c(.25,.1,.1,.1,.05,.1,.1,.2),c(2,2,2))
# , , 1
# [,1] [,2]
# [1,] 0.25 0.1
# [2,] 0.10 0.1
# , , 2
# [,1] [,2]
# [1,] 0.05 0.1
# [2,] 0.10 0.2
我想它可以理解为一种横穿第三维的“立方体”。它有行(维度 1)、列(维度 2)和“高度”(维度 3),可以这么说……
现在我可以对其中一个维度的值求和。有 3 种可能的组合:
Tm1 <- apply(T0,c(1,2),sum)
Tm2 <- apply(T0,c(1,3),sum)
Tm3 <- apply(T0,c(2,3),sum)
现在我有了这个:
#> Tm1
# [,1] [,2]
#[1,] 0.3 0.2
#[2,] 0.2 0.3
#> Tm2
# [,1] [,2]
#[1,] 0.35 0.15
#[2,] 0.20 0.30
#> Tm3
# [,1] [,2]
#[1,] 0.35 0.15
#[2,] 0.20 0.30
它们是立方体的“面孔”。
是否可以从这 3 个矩阵中恢复原始数组? .换句话说,仅仅看它的“面”就可以知道这个“立方体”内部的分布吗?
如果是这样,该怎么做? (我的意思是,“代数方式”和 R 算法......)
【问题讨论】:
-
这非常类似于生态推理问题。
标签: arrays r matrix linear-algebra