Borrar filtros
Borrar filtros

split a rectangular matrix

2 visualizaciones (últimos 30 días)
Elysi Cochin
Elysi Cochin el 1 de Abr. de 2019
Comentada: Akira Agata el 1 de Abr. de 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.

Respuesta aceptada

Akira Agata
Akira Agata el 1 de Abr. de 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 comentarios
madhan ravi
madhan ravi el 1 de Abr. de 2019
Note: Naming a variable input is not a good idea, it will shadow the in-built function input().
Akira Agata
Akira Agata el 1 de Abr. de 2019
Yes, that's true. Thank you for your additional comment !

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Operating on Diagonal Matrices en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by