【发布时间】:2019-02-05 11:01:47
【问题描述】:
所以这里是瘦的:
想象一个魔方;它是 3x3x3。我碰巧有一个数组,它是一个魔方的“立方体”,只是它是 4x4xn。 n 从 1 开始
当数组中每个 4x4 矩阵中的某个条件为真时,矩阵会自我复制;即 n 增长 1(数组或魔方变长/变成长方体)。假设,对于数组中的每个 4x4 矩阵,如果 [2,4] > [2,1],则矩阵在数组中复制其自身的另一个版本。
当数组中每个 4x4 矩阵中的相同特定条件为假时,矩阵本身会“死亡”或将其自身从存在中抹去。数组或魔方变得更短。比方说,对于数组中的每个 4x4 矩阵,如果 [2,4]
所以我试图将它构建到一个数组中,显然你不能随意在数组中添加和删除矩阵。
有人告诉我你必须建立一个张量 - (从我的概念模型到维基百科所说的,看起来这是一个二阶应力张量)。我不是物理学家,也绝对不是数学纯粹主义者。我是一名基础应用数学专家 (ORSA),但我没有这方面的任何学位,只有几年的“分析”经验。
是否有人可以为我演示如何在 R 中构建此结构。我希望您理解找到有关如何在 R 中构建我相信的类型的张量的可理解/概念性信息'我的写作是非常困难的。
非常感谢您提供的任何帮助。
非常感谢。
以下是我尝试过的一些方法:
cells<-c(0,.4,0,0,.25,.6,.25,.5,4,12,4,10,20,0,0,0)
Mu<-matrix(cells, 4,4, byrow=TRUE)
Ma<-list(Mu)
for(i in Ma){
if(i[2,4] > i[2,1]){
j <-length(Ma) + 1
c[Ma, j<-Mu]
}else if(i[2,4] < i[2,1]){
Ma[[i]] <- NULL
}
}
}
这不起作用。
【问题讨论】:
-
另外,作为后续问题,在数组中某个位置[i,j]的矩阵中查找最大值的方法与使用张量相同吗?当我尝试对数组执行此操作时,我这样做了:'BEST
-
既然您希望 4*4 矩阵的集合能够增长和缩小,为什么不使用 4*4 矩阵的列表(或环境)?
-
当我尝试构建一个列表时,我发现很难根据列表元素中的元素条件进行自我复制。所以让我们说有一个矩阵作为列表中的一个元素,我想将该矩阵中的一个元素与该矩阵中的另一个元素进行比较,看看我是否要删除或复制该矩阵,这很难做到(我并不是说这是不可能的;我是说我已经在阳光下尝试了尽可能多的方法来做到这一点,而 R + 我对它的有限了解 + 我的大猩猩逻辑 = 错误)
-
Vincent,您是否碰巧认识另一个可能会问如何在 stackoverflow 上执行此操作的人 - 创建一个环境/矩阵列表,然后可以从中访问元素以查看条件是否为真?非常感谢您的帮助。我将尝试在 R 中构建此列表并向您展示我是如何做到的。只是我的任何方法都远未接近实现我想要做的事情。
-
如果您提供reproducible 示例,人们会更容易回答。
标签: arrays r matrix rubiks-cube