您好,我正在尝试执行以下操作:
这是我的桌子:
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
我有一个矩阵[25,1]。
我要执行以下操作:如果第一列和最后一列中的值与矩阵中的数字匹配,请将其值更改为“ 99”。
所以输出应该是这样:
99
2
3
4
99
99
7
8
9
99
99
12
13
14
99
99
17
18
19
99
99
22
23
24
99
这是我的尝试:
NT = zeros (x*y:1);
NT(:,1) = 1:x*y;
for i = 1:x*y
for j = 1
if NT(i,j) == x1(i,j)
NT(i,j) = 99;
end
end
end
答案 0 :(得分:1)
使用ismember
可以很容易地做到这一点。让
A = [1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15; 16 17 18 19 20; 21 22 23 24 25];
B = (1:25).';
new_value = 99;
然后
B(ismember(B, A(:, [1 end]))) = new_value;
给予
B =
99
2
3
4
99
99
7
8
9
99
99
12
13
14
99
99
17
18
19
99
99
22
23
24
99