在 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
我想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