Is it possible to use a variable name like this within Matlab?

5 visualizaciones (últimos 30 días)
Leon
Leon el 17 de Oct. de 2019
Comentada: Leon el 17 de Oct. de 2019
I have standardized header names with slash like this: OXYGEN_UMOL/KG.
How do I escape the '/' so that I can use commands like this?
OXYGEN_UMOL/KG = 5;
The same variable name should go to my Excel writetable command.
Thanks!
  2 comentarios
Daniel M
Daniel M el 17 de Oct. de 2019
It is not possible with regular variable names. The only time is may be possible is with the names of variables within a table, and then only in release R2019b. Unfortunately, I have R2019a so I cannot test this.

Iniciar sesión para comentar.

Respuesta aceptada

Guillaume
Guillaume el 17 de Oct. de 2019
Editada: Guillaume el 17 de Oct. de 2019
Confusingly, variable names can mean two different things now in matlab. A generic variable name, e.g.
>> A = 5
is limited to alphanumeric characters and _ and cannot start with a digit.
Since R2019b, table variable names on the other hand can have any characters in them, so yes a table variable can be named OXYGEN_UMOL/KG.
One way to do this:
>> t = table([1;2;3], ["aaa"; "b"; "cc"], 'VariableNames', {'OXYGEN_UMOL/KG', 'Name with spaces'})
t =
3×2 table
OXYGEN_UMOL/KG Name with spaces
______________ ________________
1 "aaa"
2 "b"
3 "cc"
Another way:
>> t.('#@!') = [10;20;30]
t =
3×3 table
OXYGEN_UMOL/KG Name with spaces #@!
______________ ________________ ___
1 "aaa" 10
2 "b" 20
3 "cc" 30
writetable will write these names as is in excel or a text file.
  2 comentarios
Adam Danz
Adam Danz el 17 de Oct. de 2019
Editada: Adam Danz el 17 de Oct. de 2019
Thanks, I hadn't thought about tables.
Leon
Leon el 17 de Oct. de 2019
Many thanks, Everyone!
Glad this works with table after R2019b.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Tables en Help Center y File Exchange.

Productos


Versión

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by