Averaging mutiple structures to get a single mean waveform

1 回表示 (過去 30 日間)
Jake Bowd
Jake Bowd 2020 年 4 月 24 日
回答済み: Srivardhan Gadila 2020 年 5 月 1 日
Hi,
I have a structure called Results.
Within this structure I have x amount of fields. Each field having a 1xn structure. I would then like to make an average waveform from the 1xn structure for each field.
Conceptually, this is a very basic thing to do, but struggling to apply it.
Many thanks,

採用された回答

Srivardhan Gadila
Srivardhan Gadila 2020 年 5 月 1 日
The following code might help you:
clear all
a(1).waveforms = rand(101,1);
a(2).waveforms = rand(101,1);
a(3).waveforms = rand(101,1);
Results.a = a;
Results.b = a;
Results.c = a;
fieldNames = fieldnames(Results);
for i = 1:numel(fieldNames)
res = arrayfun(@(x)x.waveforms,Results.(fieldNames{i}),'UniformOutput',false);
resMat = cell2mat(res);
avgWaveforms.(fieldNames{i}) = mean(resMat,2);
end
avgWaveforms
Refer to arrayfun & mean for more information and related examples.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by