i need to create variable name using for loop from a table
Afficher commentaires plus anciens
i'm trying to assign each column from my table to each separate variable with header as variable name using for loop
i couldn't find any function that directly does it
i've used fo loop to index tha data and i'm able to pront the collumns separately
when i try to assign contents of a table as variable name it is not allowing to go ahead
the following is my code
tableA has headers as variable names which are loaded in table T
file =("WLTCshortened_2.txt")
opts = detectImportOptions(file);
opts.DataLines = 3;
tableA=readtable(file,opts)
T = readtable('variable_name.xlsx', 'Range','A2:BV2', 'ReadVariableNames',false)
for i=(1:74)
rowname =string(table2cell(T(1,i)))
y=rowname.char
string(y)=(tableA.(string(y)))
end
9 commentaires
KSSV
le 23 Fév 2022
You can straight away access them using:
either T.(1), T.(2) or T.varname1, T.varname2.
Why you want to assign them ino other variable?
Arif Hoq
le 23 Fév 2022
please attach your file
Vijayagopi Ramachnadran
le 23 Fév 2022
Modifié(e) : Vijayagopi Ramachnadran
le 23 Fév 2022
Vijayagopi Ramachnadran
le 23 Fév 2022
KSSV
le 23 Fév 2022
for i = 1:width(T)
data = T.(i) ;
end
Vijayagopi Ramachnadran
le 23 Fév 2022
Modifié(e) : Vijayagopi Ramachnadran
le 23 Fév 2022
"i need a way to use the string stored in y as a variable name"
Why? What are you planning on doing with those dynamically-named variables?:
What possible benefit do you imagine that cannot be achieved using the syntaxes shown by KSSV?:
"i need to separate each column to create a timeseries data"
You can do that easily by looping over the table variables and storing the timeseries in a cell array, table, or structure. Did you try that before jumping to the conclusion that you need to dyanamically name variables?
Vijayagopi Ramachnadran
le 23 Fév 2022
Vijayagopi Ramachnadran
le 23 Fév 2022
Réponse acceptée
Plus de réponses (1)
Steven Lord
le 23 Fév 2022
1 vote
Can you define variables with numbered names like X1, X2, X3, ... ? Yes.
Should you do this? Generally we recommend against it. See that page for alternatives you should use instead.
3 commentaires
Vijayagopi Ramachnadran
le 23 Fév 2022
Steven Lord
le 23 Fév 2022
Since you mentioned you want to do this in the context of working with Simulink, I'd consider using a model workspace or perhaps a data dictionary. See the documentation for more information on how to programmatically interact with a model workspace and this documentation section for more information about managing design data in general.
Vijayagopi Ramachnadran
le 23 Fév 2022
Catégories
En savoir plus sur Workspace Variables and MAT Files dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!