How do I define more than one matrix as i= on for loop?
Info
This question is closed. Reopen it to edit or answer.
Show older comments
I have these 3 loops:
for i = jumph
SJvsSJWA = ttest2(i(ref(:,3)),i(ref(:,1)));% jump height
CJvsCJWA = ttest2(i(ref(:,4)),i(ref(:,2)));
SJWAvsCJWA = ttest2(i(ref(:,1)),i(ref(:,2)));
SJvsCJ = ttest2(i(ref(:,3)),i(ref(:,4)));
end
for i = avp
SJvsSJWA = ttest2(i(ref(:,3)),i(ref(:,1)));% average power
CJvsCJWA = ttest2(i(ref(:,4)),i(ref(:,2)));
SJWAvsCJWA = ttest2(i(ref(:,1)),i(ref(:,2)));
SJvsCJ = ttest2(i(ref(:,3)),i(ref(:,4)));
end
for i = peakp
SJvsSJWA = ttest2(i(ref(:,3)),i(ref(:,1)));% peak power
CJvsCJWA = ttest2(i(ref(:,4)),i(ref(:,2)));
SJWAvsCJWA = ttest2(i(ref(:,1)),i(ref(:,2)));
SJvsCJ = ttest2(i(ref(:,3)),i(ref(:,4)));
end
What I want to do is combine the 3 for loops so that for example:
i = jumph:avp:peakp
but I am aware this wouldn't work, so need a way to do this.
The three variables jumph, avp and peakp are all 54 x 1 matrices.
3 Comments
Star Strider
on 19 May 2014
Before we go any further, it’s worth noting that in the code you’ve posted, you’re doing exactly the same operation in all three loops and saving only the last result in the last loop. You are also not saving the p-value because you’re not asking ttest2 to return it. The p-value is the only result you really need.
Franchesca
on 19 May 2014
Star Strider
on 19 May 2014
Is ‘i’ a loop counter (vector) or is it something else? (This may have a context I’m not familiar with.) I don’t know how your data are organised.
Answers (1)
Matt J
on 19 May 2014
One way,
for i=1:54
m=jumph(i);
n=avp(i);
p=peakp(i);
%do stuff with m,n,p
end
2 Comments
Franchesca
on 19 May 2014
Matt J
on 19 May 2014
If so, then what benefit are you seeking in combining the loops? The existing code will do that already.
This question is closed.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!