find and replace matrix according vector

1 view (last 30 days)
alize beemiel
alize beemiel on 10 Nov 2020
Commented: alize beemiel on 10 Nov 2020
hi everyone
i have
vector x and matrix A
x = [1 2 3 7 8 9 13 22 30 ]
A =[1 3 6 9
2 12 13 8
3 3 6 7
4 22 31 30
5 8 9 33 ]
and i want to have value in matrix A accordding a vector x
and replace it by a new value like to add 10000
without changing a first column in A
i want this resultat
A =[1 10003 6 10009
2 12 10013 10008
3 10003 6 10007
4 10022 31 10030
5 10008 10009 33 ]
and thanks

Answers (1)

Stephen23
Stephen23 on 10 Nov 2020
x = [1,2,3,7,8,9,13,22,30];
A = [1,3,6,9;2,12,13,8;3,3,6,7;4,22,31,30;5,8,9,33];
ida = ismember(A,x);
ida(:,1) = false;
A(ida) = A(ida)+1000
A = 5×4
1 1003 6 1009 2 12 1013 1008 3 1003 6 1007 4 1022 31 1030 5 1008 1009 33

Categories

Find more on Multidimensional Arrays in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!