How to vertically concatenate certain fields of a structure on each pass of a loop?

9 ビュー (過去 30 日間)
Nicholas Kavouris
Nicholas Kavouris 2022 年 6 月 23 日
回答済み: Matt J 2022 年 6 月 23 日
i have a series of functions i need to analyze .txt files and pull relevant data for example, with the output from 'analyzedata' being a structure. How can i concatenate the results from each file to the results from previous files?
i want final to be a struct with the fields below, with those fields populated with the values from each loop of 'analyze data'
fields={'duration','temperture','RPM'}
final=struct(fields)
for k=1:numel(files)
.....
[data]=pulldata(filename)
[results]=analyzedata(data)
end
  2 件のコメント
Nicholas Kavouris
Nicholas Kavouris 2022 年 6 月 23 日
a table would work for the final results, but the results of my analysis function contain a few arrays which are best suited to a structure.
i do not understand why it is so difficult to concatenate results from one field into another structure

サインインしてコメントする。

回答 (1 件)

Matt J
Matt J 2022 年 6 月 23 日
clear results
for k=numel(files):-1:1
.....
data=pulldata(filename);
results(k)=analyzedata(data);
end
for f=string(fieldnames(results)')
final.(f)=vertcat( results.(f) );
end

製品


リリース

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by