Preallocation of a matrix: how to shrink it afterwards?

4 views (last 30 days)
I'm trying to create an empty epoch for every epoch number in epochn - epochn is a nx1 matrix. How can I preallocate fullstate efficiently? Thanks!
%Create empty epoch for every epoch number
for t = epochn
idx = find(epochn == t);
fullstate(t) = state(idx);
clear idx
end

Answers (1)

per isakson
per isakson on 11 May 2020
Edited: per isakson on 11 May 2020
Something like this
fullstate = class_of_state( size(epochn) );
for t = reshape( epochn, 1,[] )
idx = find(epochn == t);
fullstate(t) = state(idx);
clear idx
end
The variable, state, what type of values does it have?
"shrink it afterwards" why would that be necessary?

Categories

Find more on Resizing and Reshaping Matrices 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!