Indexing all the row data for each column

21 ビュー (過去 30 日間)
Vin
Vin 2021 年 6 月 23 日
回答済み: millercommamatt 2021 年 6 月 23 日
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 件のコメント
Rik
Rik 2021 年 6 月 23 日
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 2021 年 6 月 23 日
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.

サインインしてコメントする。

回答 (1 件)

millercommamatt
millercommamatt 2021 年 6 月 23 日
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)

カテゴリ

Help Center および File ExchangeResizing and Reshaping Matrices についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by