Referring to variables with concatenated strings

28 Ansichten (letzte 30 Tage)
Ross Boland
Ross Boland am 2 Apr. 2015
Bearbeitet: Stephen23 am 19 Jun. 2019
I want to run a loop that will apply the same functions to many sets of data. For example the data names are named by putting the sensor type first, then what is been recorded, then what recording it is, for example
accel_cycle_1 gyro_run_4
In each variable there is 3 columns of data. I can concatenate the sensor type, data type and the number. I then want to refer to specific columns in the variables with a function I made for each concatenated string, but matlab assigns values to the letter of the string rather than referring to variable of that name. Is it possible to do this? Thanks
  1 Kommentar
Stephen23
Stephen23 am 2 Apr. 2015
Use indices instead of creating variable names dynamically. Read the answers to know why!

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

James Tursa
James Tursa am 2 Apr. 2015
Yes it is possible to do this using eval, but please do not do this! There are much better ways to organize your data using cell or struct arrays. E.g., see these links:

Weitere Antworten (2)

Stephen23
Stephen23 am 2 Apr. 2015
Bearbeitet: Stephen23 am 19 Jun. 2019

Matt J
Matt J am 2 Apr. 2015
Bearbeitet: Matt J am 2 Apr. 2015
You should not be using parts of a variable's name to index data. You should be using indices to index data. E.g., instead of
A1=5;
A2=10;
you should be doing
A(1)=5;
A(2)=10;
or other indexing types like cell array indexing.

Kategorien

Mehr zu Variables finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by