How to transform a vector to a matrix with same position ?

Hello everyone!
i want to ask you, if i have a matrix A in each row i have only one value , the rest are set to zero.Also i have a column vector V.
V =sum(A,2) but with removed elements.
I want to replace the value in A by the value in V at the same positions.
this is an example :
A=[100 0 0 0 0 0
0 50 0 0 0 0
0 0 0 20 0 0
0 0 0 0 30 0
0 0 0 0 0 80]
here the removed element in row 2 (50).
So V is the follow:
V=[100
20
30
80]
Now i want to replace A by elements in V.
the required result is :
A1=[100 0 0 0 0 0
0 0 0 20 0 0
0 0 0 0 30 0
0 0 0 0 0 80]
How can i do that?

 採用された回答

Matt J
Matt J 2022 年 10 月 30 日

0 投票

A=A( ismember(sum(A,2),V) ,:)

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeCreating and Concatenating Matrices についてさらに検索

質問済み:

2022 年 10 月 29 日

コメント済み:

2022 年 10 月 30 日

Community Treasure Hunt

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

Start Hunting!

Translated by