How to get a matrix with different row lengths?

81 views (last 30 days)
I have a two dimensional matrix "check" of zeros and ones. I need to check the ones in each row, take the indexes of ones and store in another matrix. the number of ones are different in each row so the resultant matrix will have different lengths. How do i store them in one matrix?
for i=1:length(NewAps_1)
I2(i,:)=find(check_Naps(i,:))
end
the I2 matrix is the resultant matrix.

Accepted Answer

Ameer Hamza
Ameer Hamza on 1 May 2018
You cannot do that in matrices, because matrix rows need to be equal length. For that, you will need cell array. You can do the following to make cell array
I2 = cell(1, length(NewAps_1));
for i=1:length(NewAps_1)
I2{i}=find(check_Naps(i,:));
end
  4 Comments
Sohaib Bin Altaf
Sohaib Bin Altaf on 1 May 2018
Thanks a lot sir for your help. God bless you.

Sign in to comment.

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!