split a rectangular matrix
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Elysi Cochin
am 1 Apr. 2019
Kommentiert: Akira Agata
am 1 Apr. 2019
i have a matrix as
input = [1 0 0 0; 0 1 0 0; 0 0 1 0];
how can i split a the input matrix as
output1 = [1 0 0 0; 0 0 0 0; 0 0 0 0];
output2 = [0 0 0 0; 0 1 0 0; 0 0 0 0];
output3 = [0 0 0 0; 0 0 0 0; 0 1 0 0];
store output1-3 in a single matrix named output with n-dimension.
matrix input can be of any dimension but rectangular matrix and only diagonal values will be there.
0 Kommentare
Akzeptierte Antwort
Akira Agata
am 1 Apr. 2019
How about the following?
input = [1 0 0 0; 0 1 0 0; 0 0 1 0];
output = zeros([size(input),size(input,1)]);
for kk = 1:size(input,1)
output(kk,:,kk) = input(kk,:);
end
2 Kommentare
madhan ravi
am 1 Apr. 2019
Note: Naming a variable input is not a good idea, it will shadow the in-built function input().
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Operating on Diagonal Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!