## Reducing a vector size when it is being updated in a loop

Hans123

### Hans123 (view profile)

님이 질문을 제출함. 27 Mar 2019
최근 활동 Catalytic

### Catalytic (view profile)

님이 댓글을 추가함. 28 Mar 2019
Catalytic

### Catalytic (view profile)

님이 답변을 채택함.
Hi,
I have a vector A that is being updated in a loop, A contains data from a Trial, and the length of it changes with each iteration. I want to make the length of each A the same so the plots are of the same size.
Trial 1 length = 497 x 12, Trial 2 length = 700 x 12 ... Trial 5 length = 687x12 ( I want to get a 497x12 vector for all trials)
I currently have this piece of code, which find the smallest length of the A - the problem is the line of code that the smallest length out is inside the loop and after each iteration it changes.
The smallest number is a hint to how long the array A should be, since it varies for each trial uploaded.
I hope the below code helps
smallest = 10000;
for h=1:5
%code to load all script files
if h==1
elseif h==2
elseif h==3
elseif h==4
elseif h==5
end
[x , y] = size(A);
if x<smallest
smallest = x; %the smallest length of rows for A
end
...
end

로그인 to comment.

## 답변 수: 1

### Catalytic (view profile)

on 27 Mar 2019
Edited by Catalytic

### Catalytic (view profile)

on 27 Mar 2019

for h=5:-1:1
%code to load all script files
if h==1
elseif h==2
elseif h==3
elseif h==4
elseif h==5
end
Acell{h}=A;
end
smallest = min( cellfun(@(c) size(c,1), Acell) );
Ashort=cellfun(@(c)c(1:smallest,:) , Acell,'uni',0);
for i=1:numel(Ashort)
figure(i); plot(Ashort{i});
end

표시 이전 댓글 수: 1
Catalytic

### Catalytic (view profile)

on 27 Mar 2019
what does Acell{h}=A do
It stores A in Acell{h}.
Undefined function or variable 'Acell'.
Shouldn't happen. Did you copy/paste my code? In any case try re-pasting.
Hans123

### Hans123 (view profile)

on 28 Mar 2019
Thanks the code works well, inorder to extrapolate the data from the cell so I can use them in my calculations should I use the function celltomat?
Catalytic

### Catalytic (view profile)

on 28 Mar 2019
No, just grab whichever data set you need by indexing, as in Acell{i}.

로그인 to comment.

Translated by