我有两个矩阵,矩阵A和矩阵B(5x5)。我将0到4之间的值随机分配给矩阵A。
现在,例如,我想检查A1,2 > A2,1。如果这是真的,我想给B1,2和B2,1赋值。在这种情况下,它应该是B1,2 =3和B2,1 = 0。如果A1,2 < A2,1,则应该反过来;例如,B1,2 =0和B2,1 = 3。如果A1,2 == A2,1,它应该是B1,2 = 1和B2,1 =1。
我正在寻找一个R代码来做这件事,作为一个循环,以正确的0,1或3的值完全填充矩阵B。
如果有任何帮助,我将不胜感激!非常感谢您的提前!

如果R的结果是矩阵A,那么矩阵B应该看起来像是自绘矩阵。

发布于 2021-05-24 23:25:44
我们可以这样做
> `diag<-`(3 * (A > t(A)) + 1 * (A == t(A)), NA)
[,1] [,2] [,3]
[1,] NA 3 0
[2,] 0 NA 1
[3,] 3 1 NAhttps://stackoverflow.com/questions/67670905
复制相似问题