gpt4 book ai didi

r - 使用 R 在矩阵中的特定位置插入行

转载 作者:行者123 更新时间:2023-12-04 11:41:04 26 4
gpt4 key购买 nike

我试图在特定位置向矩阵添加行,这些位置包含在向量中。下面的模式显示了输入和预期结果。我尝试使用“for”循环,但无法使其工作。任何建议都有帮助。

源矩阵 (6x3)

(1) 1   2   3
(2) 4 5 6
(3) 7 8 9
(4) 6 9 2
(5) 3 6 1
(6) 2 2 7

位置向量(表示源矩阵中将包含零的行)
[2, 5, 6]  

结果矩阵(6+length.vector x 3)
(1) 1   2   3
(2*)0 0 0
(3) 4 5 6
(4) 7 8 9
(5*)0 0 0
(6*)0 0 0
(7) 6 9 2
(8) 3 6 1
(9) 2 2 7

最佳答案

mat <- matrix(1:18,6)
vec <- c(2, 5, 6)

# New matrix 'new_mat' with all zeros,
# No. of rows = original matrix rows + number new rows to be added
new_mat <- matrix(0,nrow=9,ncol=3)

# 'new_mat' rows getting filled with `mat` values
new_mat[-vec,] <- mat
new_mat
# [,1] [,2] [,3]
# [1,] 1 7 13
# [2,] 0 0 0
# [3,] 2 8 14
# [4,] 3 9 15
# [5,] 0 0 0
# [6,] 0 0 0
# [7,] 4 10 16
# [8,] 5 11 17
# [9,] 6 12 18

关于r - 使用 R 在矩阵中的特定位置插入行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37625471/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com