Combining 3 curves into 1 average
显示 更早的评论
Hi, I am trying to combine 3 curves into 1 average curve (by taking the mean of the 3 curves). As far as I understand (by reading other questions on this site) I need to use interp1, but I am not sure how to create the 'query points' (that I called n). So far my code looks like this:
n = linspace(???);
yyS = interp1(timeS(:),Y2S(:),n);
yyC = interp1(timeC(:),Y2C(:),n);
yyA = interp1(timeA(:),Y2A(:),n);
avg = mean([yyS, yyC, yyA],3);
figure(10);
plot(avg)
The data has the following dimensions:
timeS & Y2S: 345x1
timeC & Y2C: 336x1
timeA & Y2A: 335x1
Any help would be greatly appreciated!!
采纳的回答
更多回答(1 个)
Stephan
2020-6-10
Here is a simple example:
% fantasy times
times1 = 1:10
times2 = 1:2:11
% fantasy values
y1 = 2 * (1:10)
y2 = 4 * (1:2:11)
% interpolate, query points should be longest time frame
y2_new = interp1(times2,y2,times1)
% Concatenate the vectors to calculate the mean for every pair
y_all = [y1; y2_new];
% get the mean
y_mean = mean(y_all)
类别
在 帮助中心 和 File Exchange 中查找有关 Measurements and Statistics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!