matlab - 不同维数矩阵的前扫Matlab

标签 matlab matrix

我在尝试将向量中的值替换(复制)到矩阵时遇到问题。所以给定这个矩阵

 1     1     1
 1     1     1
 1     1     1
 0     0     1
 0     0     1
 0     0     1

计划是从该向量 V=[0;10;20;30;40;50;60;70;80;90;100;110;120] 中复制值,从 10 ,V(2) 开始,进入上述矩阵的列,以获得:

     10     40     70
     20     50     180
     30     60     190
     0      0      100
     0      0      110
     0      0      120

请帮忙,谢谢程序员

最佳答案

使用该代码:

a=[ 1 1 1;1 1 1;1 1 1;0 0 1;0 0 1;0 0 1];
V=[0;10;20;30;40;50;60;70;80;90;100;110;120];
a(a==1)=V(2:end)

前两行代码是在matlab中形成数组。 第三行代码将 a 数组的非零值设置为 V 从第二个元素到最后一个元素的值。 这样你就可以根据自己的喜好替换向量了。

关于matlab - 不同维数矩阵的前扫Matlab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34695438/

相关文章:

php - 如何从多个数组中获取所有组合?

Haskell 矩阵相等失败

debugging - OpenCV 中 CV_32FC3 和 CV_64FC3 的区别?

MATLAB - 删除矩阵每行中的前导零,一次 1 个?

algorithm - 在 for 循环中向量化查找函数

c - C中正态分布的错误答案

python - MATLAB 矩阵乘法性能比 NumPy 快 5 倍

r - 如何按矩阵中的名称而不是数字索引重命名特定列?

matlab - 处理过的图像中的伪影

arrays - 汇总行值的所有排列