在 R 中将数据从矩阵 A 移动到矩阵 B

Moving Data from Matrix A to Matrix B in R

我想cut/move/replace在R中从矩阵A到矩阵B的一些数据(准确地说是2500)

例如将单元格 (i,j) 从矩阵 A 移动到矩阵 B 中的单元格 (i,j)。i 和 j 都有一些固定值(准确地说是 50)并替换该单元格 (i,j ) 在矩阵 A 中带有 "0".

由于我是编程新手,谁能帮我编码?

提前致谢 问候

您可以先定义一个包含要替换的值的双列坐标矩阵,其中第一列是行索引,第二列是列索引。例如,假设您要用 3x3 中的计算值替换 3x3 矩阵 B 中的单元格 c(2,1)c(2,2)c(1,2) ] 矩阵 A:

ind <- cbind(c(2,2,1), c(1,2,2))
A <- matrix(1:9, ncol = 3)
B <- matrix(NA, ncol = 3, nrow = 3)

B[ind] <- A[ind]; A[ind] <- 0
B
     [,1] [,2] [,3]
[1,]   NA    4   NA
[2,]    2    5   NA
[3,]   NA   NA   NA
A
     [,1] [,2] [,3]
[1,]    1    0    7
[2,]    0    0    8
[3,]    3    6    9