【发布时间】:2018-03-31 18:41:15
【问题描述】:
我对矩阵有误。我不明白为什么它不起作用。代码如下:
A = zeros(3,3,3);
A(:,:,1) = [1 2 3; 4 5 6; 7 8 9];
A(:,:,2) = [1 2 3; 1 2 3; 1 2 3];
A(:,:,3) = [1 2 3; 4 5 6; 7 8 9];
我只想替换尊重二维条件的值,使用这个:
A(A(:,:,2)==1)=0
但它取代了第一维! :
0 2 3
0 5 6
0 8 9
有没有人可以向我解释为什么这不起作用?
【问题讨论】:
-
你应该看看
A(:,:,2)==1。 -
@OliverCharlesworth 是的,我知道,但我怎样才能只选择第二维来替换值?
-
A(:,:,2)==1输出一个 3×3 二维数组,但您需要 3 维数组为A(cat(3,false(3,3,1),A(:,:,2),false(3,3,1))==1)=0