How to extract desired variables column data from a table?
7 views (last 30 days)
Show older comments
I have the data in excel csv file with variable names as follows
Var1 POSValue MAXSum AVGSum SOS POS EOS Base Duration FirstHalf SecondHalf GrowthRate SenescenceRate Peaks total_cane act_y_ha act_per_ha field_yield total_FS variety
However, I want to get only required variables by using following matlab code
features = df.Properties.VariableNames(~ismember(df.Properties.VariableNames, ...
{'POS value', 'MAX sum', 'AVG sum', 'SOS', 'POS', 'EOS', ...
'base', 'duration', 'first half', 'second half', 'growth rate', ...
'senescence rate', 'peaks'}));
Instead it is extracting all the variables.
Please suggest me how to get the required variables.
Dev
0 Comments
Answers (1)
Mathieu NOE
on 7 Mar 2024
hello
this is one solution
NB that the variables names and the names your are using in the selection are not exactly the same,
like POSValue MAXSum vs POS value , MAX sum and alike....
I corrected this minor bug
T =readtable("data.xlsx");
v = {'POSValue', 'MAXSum', 'AVGSum', 'SOS', 'POS', 'EOS', ...
'Base', 'Duration', 'FirstHalf', 'SecondHalf', 'GrowthRate', ...
'SenescenceRate', 'Peaks'};
v_to_use = v(ismember(v,T.Properties.VariableNames));
new_T = T(:,v_to_use)
4 Comments
Mathieu NOE
on 7 Mar 2024
this is not my code : X = T(:, new_T);
new_T is the table extracted from T , so T(:, new_T) is non sense (you cannot use a table as a table subscript
use the code I provided above (it works !!)
See Also
Categories
Find more on Data Preprocessing 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!