Clear Filters
Clear Filters

For-loop finding the difference between 7 different arrays

2 views (last 30 days)
Hello,
I am having trouble figuring out how to get one refference array and subtract it versus 7 individual arrays. I have the code below which I can do for one array but I would like to loop it for the 7 arrays, t1-t7
Any help would be much appreciated
A(:,1) = t1(:,1)-tref(:,1); %Measuring the time difference between t1 and tref

Answers (2)

Image Analyst
Image Analyst on 2 Oct 2023
You can't loop it since you chose to have separately named 1-D arrays so you can just do it in 7 lines:
A(:,1) = t1(:,1)-tref(:,1); %Measuring the time difference between t1 and tref
A(:,2) = t2(:,1)-tref(:,1); %Measuring the time difference between t2 and tref
A(:,3) = t3(:,1)-tref(:,1); %Measuring the time difference between t3 and tref
A(:,4) = t4(:,1)-tref(:,1); %Measuring the time difference between t4 and tref
A(:,5) = t5(:,1)-tref(:,1); %Measuring the time difference between t5 and tref
A(:,6) = t6(:,1)-tref(:,1); %Measuring the time difference between t6 and tref
A(:,7) = t7(:,1)-tref(:,1); %Measuring the time difference between t7 and tref
  3 Comments
Image Analyst
Image Analyst on 2 Oct 2023
Edited: Image Analyst on 2 Oct 2023
Instead of creating separately named arrays, you can create a single array T where you load up each column with the measurements that are now going into the individual vectors. Then you can simply do
A = T - tref;
Actually you don't even need a loop then.

Sign in to comment.


Matt J
Matt J on 2 Oct 2023
Edited: Matt J on 2 Oct 2023
T=cat(3, t1,t2,t3,t4,t5,t6,t7);
A = T-tref;

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!