0
我有一個矩陣A由1 2和3,例如,MATLAB:如何替換通過針對每行另一個值的值沒有環
A= [ 1 2 2 1;
3 3 1 2;
...
...
1 1 2 2]
現在我想更換1 2 3使用不同的值在B根據它的行。例如,
B= [ 4 5 6;
10 20 30;
...
...
77 88 99]
我想將A中的值替換爲B中的每一行。例如,
A= [ 1 2 2 1; replace '1 2 3' with '4 5 6' respectively
3 3 1 2; replace '1 2 3' with '10 20 30' respectively
...
...
1 1 2 2] replace '1 2 3' with '77 88 99' respectively
C將是具有我想要的新分配的矩陣。
C= [ 4 5 5 4;
30 30 10 20;
...
...
77 77 88 88]
我不能避免這種情況下一個循環,這裏是我能做到的最快方法:
for row_i=1:size(A,1)
C(row_i,:)=B(row_i,A(row_i,:))
end
我討厭在MATLAB環,A和B的實際大小大,因此想知道是否有人可以重現它沒有循環將高度讚賞!