Calculating means ect from cell structure
13 views (last 30 days)
Show older comments
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 Comments
Accepted Answer
Oleg Komarov
on 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 Comments
More Answers (1)
See Also
Categories
Find more on MATLAB Report Generator 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!