How can i make an average plot of 2 unequal data sets?

14 views (last 30 days)
Hi all,
I have data from 2 different experiments i conducted. As can be seen in the picture i have data set1 and data set2 and their corresponding plots. Now i wish to make a plot which is roughly an average of the two data sets but the data points i have are unequal so i do not know how to take a mean of the two or make confidence interval maybe. I would be grateful for any suggestions, thanks.
  2 Comments
dpb
dpb on 22 Feb 2019
Interpolate the two with perhaps some smoothing to a common matching set of independent variable values and then average those results.
aditya palawat
aditya palawat on 22 Feb 2019
Hi dpb, thanks for the reply. can you please guide me a bit with a simpler example or piece of code? i am only a beginner in matlab,thanks.

Sign in to comment.

Accepted Answer

Krishna Zanwar
Krishna Zanwar on 26 Feb 2019
Hey Aditya,
This problem can be solved by 1D interpolation,
Let the X axis limits be 'Xmin', 'Xmax'.
And the data of X and Y axis be stored in 'X_data' , 'Y_data'.
For the second signal let them be stored in 'X_data_1' , 'Y_data_1';
You can sample the data at interval of 'X_int'.
Now
Xnew=Xmin:X_int:X_max;
Ynew=interp1(X_data,Y_data,Xnew);
You can follow the same procedure for 2nd data set.
Ynew_1=interp1(X_data_1, Y_data_1, Xnew);
Now you can get the average Yavg as-
Yavg=(Ynew+Ynew_1)/2;
And plot it against Xnew-
plot(Xnew,Yavg)
More information on 1D interpolation can be found here.
Hope this helps.

More Answers (0)

Categories

Find more on Interpolation 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!