matlab - 将矩阵的一部分复制到另一个具有相同索引的空矩阵

标签 matlab matrix indexing

我正在尝试将 ma​​tlab 中的矩阵(矩阵 1)的一部分复制到另一个空的零矩阵(矩阵 2),以便我从矩阵 1 复制的部分具有相同的索引矩阵 2,例如

矩阵 1(mat1):

0 3 0 0 2 4 1 2 6
1 3 4 2 0 0 0 2 0 
0 2 6 1 3 6 6 1 1
0 0 0 2 1 3 3 1 0
1 4 5 2 3 3 0 0 1

矩阵 2 (mat2) 期望的输出:

0 0 0 0 0 0 0 0 0
0 0 4 2 0 0 0 0 0
0 0 6 1 3 6 6 0 0
0 0 0 2 1 3 3 0 0
0 0 0 0 0 0 0 0 0

我试过类似的东西

mat2([2:4],[3:7]) = mat1([2:4],[3:7]) 

但是当然它不起作用...有什么有效的方法可以做到这一点吗?我找不到其他线程来帮助解决这个问题。

谢谢!

最佳答案

它确实有效。您只需要先创建 mat2:

mat2 = zeros(size(mat1));
mat2(2:4, 3:7) = mat1(2:4, 3:7);

请注意,这些范围内不需要方括号。

关于matlab - 将矩阵的一部分复制到另一个具有相同索引的空矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17353673/

相关文章:

matlab - matlab中的非线性平方优化任务

matrix - 如何对矩阵中选项卡的结果进行排序

matrix - 如何从矩阵中删除几列

Matlab函数用于检查矩阵是否相等,无序

r - 使用 row, col 索引从矩阵中索引值

sql - 使用 postgreSQL 的 ORDER BY COUNT 优化(索引?)

matlab - 如何让 MATLAB 对一个特别棘手的方程组进行数值求解?

matlab - 获取矩阵除某些索引之外的所有列

c++ - 正确重载 stringbuf 以替换 MATLAB mex 文件中的 cout

indexing - HBase Table的row key是自动索引的吗?