MATLAB Answers

Selecting options for saving array

1 view (last 30 days)
Marc Hummel
Marc Hummel on 11 Jul 2016
Answered: Friedrich on 11 Jul 2016
I want to save a 375x5 array as .txt file. Everything is fine so far until I make a selection via my GUI and some radiobuttons which colums to save. I wrote a script but noticed later on, that it's not possible to select only the last 2 colums because in this case the last colums move forward so they doesn't exist anymore when the code comes to their selection.
Any suggestions how I can change my if- or for-cases to change the problem? Thank you
My code:
calc_diameter = alldia;
if status_diameter(1,1) == 0;
calc_diameter(:,1) = [];
elseif status_diameter(1,1) == 1
if status_diameter(2,1) == 0;
calc_diameter(:,2) = [];
elseif status_diameter(2,1) == 1
if status_diameter(3,1) == 0;
calc_diameter(:,3) = [];
elseif status_diameter(3,1) == 1
if status_diameter(4,1) == 0;
calc_diameter(:,4) = [];
elseif status_diameter(4,1) == 1
FinalDia = mean(calc_diameter,2);
StDevDia = std(calc_diameter,1,2);
dlmwrite(SaveName,[xscale calc_diameter],'delimiter','\t');
dlmwrite(SaveName,[xscale FinalDia StDevDia],'delimiter','\t');

Answers (1)

Friedrich on 11 Jul 2016
how about cutting out the data you want to save? You have 5 radio buttons and you can figure out which one is checked. So you can built up an array like this [0 0 0 1 1] where 1 stands for radio button is checked. Once you have that array you can easily do:
selection = logical([0 0 0 1 1]);
alldia = rand(375,5 );
calc_diameter = data(:,selection);

Community Treasure Hunt

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

Start Hunting!