dividing a matrix into equal submatrices

1 visualización (últimos 30 días)
Matt
Matt el 3 de Mayo de 2012
Hello all,
I need to take a matrix that is one column of non integers and divide it into 10 equal length matrices that are 1/10 of the original, but still one column, for analysis. mat2cell doesn't work on non integers and nothing I have been searching in has given an answer. I'm fairly new to MATLAB, so please be kind if this is a fairly simple request. Any help would be awesome.
Thanks, Matt

Respuesta aceptada

Kye Taylor
Kye Taylor el 3 de Mayo de 2012
I assume that your vector, x, is n-by-1 where n is divisible by 10.
Try
xIntoTenPieces = reshape(x,[],10);
which produces a matrix, each column is is 1/10 of the original vector x. You can access the kth column with the syntax
xIntoTenPieces(:,k)
  2 comentarios
Matt
Matt el 3 de Mayo de 2012
Exactly what I wanted to do. Thanks so much!
Kye Taylor
Kye Taylor el 3 de Mayo de 2012
My pleasure!

Iniciar sesión para comentar.

Más respuestas (1)

Walter Roberson
Walter Roberson el 3 de Mayo de 2012
mat2cell() works fine for any numeric array.
L = size(x,1);
L10 = L / 10;
mat2cell(x, repmat(L10,1,10), 1)

Categorías

Más información sobre Resizing and Reshaping Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by