How to find the waveform average from multiple waveforms?
Show older comments
I have plotted a wavefrom using excel file(i have shown it below). I have 7 other similar graphs like this. I need to find the waveform average of the this 8 graphs. The length of these graphs also different.

3 Comments
Ameer Hamza
on 10 Sep 2020
Are all the waveforms have an equal length? Are all present in a single excel file? Can you share the file?
Jefferson Noble Antony
on 10 Sep 2020
Ameer Hamza
on 10 Sep 2020
Do they have the same range on the x-axis?
Answers (1)
Xavier
on 10 Sep 2020
Potentially something like this
data1 = randperm(randi([10 20]))'; %readmatrix('dataset1.csv');
data2 = randperm(randi([10 20]))'; %readmatrix('dataset2.csv');
data3 = randperm(randi([10 20]))'; %readmatrix('dataset3.csv');
data4 = randperm(randi([10 20]))'; %readmatrix('dataset4.csv');
data5 = randperm(randi([10 20]))'; %readmatrix('dataset5.csv');
data6 = randperm(randi([10 20]))'; %readmatrix('dataset6.csv');
data7 = randperm(randi([10 20]))'; %readmatrix('dataset7.csv');
max_num_datapoints = max([numel(data1),...
numel(data2),...
numel(data3),...
numel(data4),...
numel(data5),...
numel(data6),...
numel(data7)]);
alldata = zeros(max_num_datapoints, 7);
alldata(1:numel(data1), 1) = data1;
alldata(1:numel(data2), 2) = data2;
alldata(1:numel(data3), 3) = data3;
alldata(1:numel(data4), 4) = data4;
alldata(1:numel(data5), 5) = data5;
alldata(1:numel(data6), 6) = data6;
alldata(1:numel(data7), 7) = data7;
avgd = sum(alldata', "omitnan")' ./ (2-sum(isnan(alldata)')');
Categories
Find more on Continuous Waveforms 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!