Find average of multiples lines

7 views (last 30 days)
Vince Clementi
Vince Clementi on 1 Feb 2018
Commented: Marcus Leiwe on 27 Mar 2020
Hi All,
Having more trouble than I should finding the average line from 7 records. Each record is basically [T, (a-b)], where T is a common time interval (0:0.1:30) and (a-b) is the difference between two data sets (a-b, a-c, a-d, etc.).
I've designated each "difference" as such: diff, diff2, diff3, diff4, diff5, diff6, diff7. I am easily able to plot all of these records on the same plot. However, each method to find the mean of these lines fails. SO far, I have used mean([diff diff2, etc.],7). How do I go about finding the average for each common time point and then plot that?
Thanks.
  7 Comments
Vince Clementi
Vince Clementi on 1 Feb 2018
Thanks! I'll give it a shot.
Bob Thompson
Bob Thompson on 1 Feb 2018
Let me know if it works, and I can post as an official answer, or if you have some trouble shooting you can post your own answer.

Sign in to comment.

Accepted Answer

Greg
Greg on 1 Feb 2018
Regarding the follow-up question found in the comments (NaN affecting the mean):
Use the 'omitnan' flag of the mean function (R2015a and newer):
%%%I wouldn't use "diff" as a variable name - it's a function
avg = mean([diff1, diff2, diff3, diff4, diff5, diff6, diff7],2,'omitnan');
  2 Comments
Bob Thompson
Bob Thompson on 1 Feb 2018
That's pretty good, definitely gets rid of having to do a manual check.
Marcus Leiwe
Marcus Leiwe on 27 Mar 2020
I think there is a function called nanmean that will do the same too

Sign in to comment.

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!