Indexing all the row data for each column

22 visualizaciones (últimos 30 días)
Vin
Vin el 23 de Jun. de 2021
Respondida: millercommamatt el 23 de Jun. de 2021
Hi everyone,
For example, if I had a matrix with 10 rows but variable column lengths for each row how would I iterate "for all row datapoints within each column"?
Right now using A(1:end,1:end) returns the entire matrix, but I would need to isolate each column of data.
Thank you in advance
  3 comentarios
Rik
Rik el 23 de Jun. de 2021
You can't have non-rectangular arrays in Matlab.
You can approximately get the same effect by using a cell array, or by padding with NaN. The most optimal strategy will depend on what you want to do.
Vin
Vin el 23 de Jun. de 2021
Sorry, I will try to be more clear.
The matrix would be 10x15 (15 being the most amount of actual data within a column), all other columns within the matrix that have less than 15 rows are padded with NaN.
Each column of data represents a waveform. My intentions would be to normalize all 10 columns of data from 0-100% to make all columns the same length.

Iniciar sesión para comentar.

Respuestas (1)

millercommamatt
millercommamatt el 23 de Jun. de 2021
For a 2D matrix, you can access a row as follows:
% Matlab indexing is row major
% return single row of matrix A
A(1,:)
A(2,:)
A(end,:)
%return single column of A
A(:,1)
A(:,2)
A(:,end)

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