Calculating means ect from cell structure
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hello everyone,
I have a beginners question on working with structures. I use a structure (called csvFiles in this example) with deeper levels name and Q: csvFiles.name.Q In my example csvFiles containes 12 entries so it would be a 1:12 struct. I want to do simple statistical operations like calculating mean, std or diff on every entrie stored in Q and write the result into the structure in a new entry called stat: csvFiles.stat
I tried the follwoing skript:
e=1:length(csvFiles);
for k = 1:e
mean=mean([csvFiles(1:e).name.Q])
[csvFiles.stat.mean]=mean
end
This only gives me an entry in the first entry of csvFiles, for the rest it leaves an empty matrix. Can somebody explain me how to solve this?
Thank you
0 Kommentare
Akzeptierte Antwort
Oleg Komarov
am 10 Aug. 2011
You overwrote the function mean with a variable with the same name, don't do that.
From the second iteration mean(...) will be considered a variable being indexed and not a function applied to (...).
Your loop could be rewritten as:
for k = 1:e
[csvFiles.stat.avg] = mean([csvFiles(k).name.Q])
end
0 Kommentare
Weitere Antworten (1)
Siehe auch
Kategorien
Mehr zu MATLAB Report Generator finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!