Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在MATLAB中用矢量变换矩阵元素_Matlab - Fatal编程技术网

在MATLAB中用矢量变换矩阵元素

在MATLAB中用矢量变换矩阵元素,matlab,Matlab,我有一个只包含零的矩阵M。现在我有两个数组。第一个包含需要更改的矩阵索引,第二个包含需要更改这些索引处矩阵元素的值 比如说: mat_A = zeros(50, 50); vec_indices = [4; 5; 2500]; vec_values = [1; 1; 1]; 现在如果我说M(4),M(5)或M(2500),我希望结果在所有情况下都是1 有没有一个简单的“一行”来完成这个任务 简单: mat_A(vec_indices) = vec_values 请注意,这仅适用于,因此当您

我有一个只包含零的矩阵M。现在我有两个数组。第一个包含需要更改的矩阵索引,第二个包含需要更改这些索引处矩阵元素的值

比如说:

mat_A = zeros(50, 50);
vec_indices = [4; 5; 2500];
vec_values  = [1; 1; 1];
现在如果我说
M(4),M(5)或M(2500)
,我希望结果在所有情况下都是1

有没有一个简单的“一行”来完成这个任务

简单:

mat_A(vec_indices) = vec_values
请注意,这仅适用于,因此当您将50x50矩阵展平为一个2500x1向量时。

简单:

mat_A(vec_indices) = vec_values

请注意,这只适用于,所以当您将50x50矩阵展平为一个2500x1向量时。

是的,我尝试过,得到的
下标索引必须是实正整数或逻辑数
在我的计算机上工作。请发布一个完整的示例,给出错误消息。嗯……你是对的,我的简单示例对我来说也很好……我正在用
textread
阅读这两个向量。它们是
[vec_1,vec_2]=textread('test.txt','%u%u')当我尝试:
mat_A(vec_1)=vec_2
时,我收到上面的错误消息。这两个向量包含正确的值…好的…我的错误是第一个向量包含索引0…对不起!是的,我试过了,得到了
下标索引必须是实正整数或逻辑数,它在我的计算机上工作。请发布一个完整的示例,给出错误消息。嗯……你是对的,我的简单示例对我来说也很好……我正在用
textread
阅读这两个向量。它们是
[vec_1,vec_2]=textread('test.txt','%u%u')当我尝试:
mat_A(vec_1)=vec_2
时,我收到上面的错误消息。这两个向量包含正确的值…好的…我的错误是第一个向量包含索引0…对不起!