Could anyone help me how to shuffle the numbers in each column

4 ビュー (過去 30 日間)
jaah navi
jaah navi 2019 年 6 月 18 日
編集済み: Andrei Bobrov 2019 年 6 月 18 日
A=[3.8723 3.6040 3.3271 3.0534 2.8094 2.6242;
0 0 0 0 0 0;
0 0 0 0 0 0;
0 0 0 0 0 0;
0 0 0 0 0 0]
I want to shuffle the numbers present in each column to oher places of that corresponding column in a way such that sum(A,2) should not be zero
For example i want to shuffle the number in the following manner.
[3.8723 0 0 3.0534 0 0;
0 0 3.3271 0 0 0;
0 3.6040 0 0 0 0;
0 0 0 0 0 2.6242;
0 0 0 0 2.8094 0]
could anyone please help me on it.

採用された回答

Andrei Bobrov
Andrei Bobrov 2019 年 6 月 18 日
編集済み: Andrei Bobrov 2019 年 6 月 18 日
[m,n] = size(A);
out = zeros(m,n);
out([randperm(m) + (0:m-1)*m,randi(m,1,n-m)+m^2]) = A(A~=0);

その他の回答 (0 件)

カテゴリ

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

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by