replace matrix A with the values of another matrix B

1 回表示 (過去 30 日間)
Elysi Cochin
Elysi Cochin 2022 年 5 月 15 日
編集済み: Dyuman Joshi 2022 年 5 月 15 日
Having a matrix A as attached, how to replace all those 1 in A with the values in matrix B, so that i get a new matrix as newA
A(:,:,1) =
0 0 1
0 1 0
0 1 1
A(:,:,2) =
1 0 0
0 0 0
0 0 0
A(:,:,3) =
0 1 0
1 0 1
1 0 0
B = [6 1 5; 2 6 7; 4 6 9];
B =
6 1 5
2 6 7
4 6 9
newA(:,:,1) =
0 0 5
0 6 0
0 6 9
newA(:,:,2) =
6 0 0
0 0 0
0 0 0
newA(:,:,3) =
0 1 0
2 0 7
4 0 0

採用された回答

Bruno Luong
Bruno Luong 2022 年 5 月 15 日
編集済み: Bruno Luong 2022 年 5 月 15 日
A= cat(3, [ 0 0 1;
0 1 0;
0 1 1], ...
[1 0 0,
0 0 0;
0 0 0], ...
[0 1 0;
1 0 1;
1 0 0 ]);
B = [6 1 5; 2 6 7; 4 6 9];
A.*B
ans =
ans(:,:,1) = 0 0 5 0 6 0 0 6 9 ans(:,:,2) = 6 0 0 0 0 0 0 0 0 ans(:,:,3) = 0 1 0 2 0 7 4 0 0

その他の回答 (1 件)

Dyuman Joshi
Dyuman Joshi 2022 年 5 月 15 日
編集済み: Dyuman Joshi 2022 年 5 月 15 日
A(:,:,1) = [0 0 1; 0 1 0; 0 1 1];
A(:,:,2) = [1 0 0; 0 0 0; 0 0 0];
A(:,:,3) = [0 1 0; 1 0 1; 1 0 0];
B = [6 1 5; 2 6 7; 4 6 9];
newA=A.*B
newA =
newA(:,:,1) = 0 0 5 0 6 0 0 6 9 newA(:,:,2) = 6 0 0 0 0 0 0 0 0 newA(:,:,3) = 0 1 0 2 0 7 4 0 0

カテゴリ

Help Center および File ExchangeMATLAB についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by