How to run function between each row

3 views (last 30 days)
Povilas Tarailis
Povilas Tarailis on 24 Feb 2021
Commented: Rik on 24 Feb 2021
Hi all. I have a matrix 7-by-256 and I need to run my funtion between each row like this: row1 row2; row1 row3; row 1 row4; etc... And save the results.
How do I specified that in for loop?

Answers (1)

Rik
Rik on 24 Feb 2021
pairs=nchoosek(1:size(data,1),2);
for n=1:size(pairs,1)
row_a=data(pairs(n,1),:);
row_b=data(pairs(n,2),:);
%calculate results here
end
  2 Comments
Povilas Tarailis
Povilas Tarailis on 24 Feb 2021
I'm completely new with matlab, so maybe you can walkthrough a bit. I don't understand what are and what happens in row_a and row_b
Rik
Rik on 24 Feb 2021
On those lines I index the 7x256 array so you have two variables, each containg 256 values. That way you can do the calculations you need. In the first iteration row_a will contain the first row and row_b will contain the second row. The next iteration row_b will contain the third row, etc.
If you have trouble with Matlab basics you may consider doing the Onramp tutorial (which is provided for free by Mathworks).

Sign in to comment.

Categories

Find more on Creating and Concatenating 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!