How to use writetable in a for loop
14 views (last 30 days)
Show older comments
Hi everyone,
I want to write a script that, for all files in my folder, selects a specific value out of a table and puts them together in one new table. I am using a for loop including the writetable command, but it creates a new file containing only the value of the last iteration. What am I doing wrong?
volumeTable = dir('*properties_aparc.mat') %% here I select the files I need out of my folder
for k = 1:length(volumeTable);
baseFilename = volumeTable(k).name;
fullFilename = fullfile(volumeTable(k).folder,baseFilename);
load(fullFilename);
T = regionPropertiesTable(31,4) %% Select row 31, column 4 from the regionPropertiesTable
writetable(T)
end
When I use regionPropertiesTable(x,y) outside of this code, it gives me a 1x1 table. I want to add the 1x1 tables of all my participants together into one file (.txt is fine).
Thanks in advance for your time! I am relatively new to MatLab.
0 Comments
Accepted Answer
VBBV
on 25 Mar 2022
T{k} = regionPropertiesTable(31,4)
Use a cell array for all participants. Later use
writetable(T)
Outside of loop
4 Comments
More Answers (0)
See Also
Categories
Find more on Startup and Shutdown 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!