how to substitute, in a table, variable names with the values of a vector

1 Ansicht (letzte 30 Tage)
i have a table of 6 colums U and each colums have its title (Nation, valueA, valueB, valueC, valueD, valueE). I want to substitute the last 5 colums names with the numbers contained in the vector X.
X = [1 2 3 4 5 ]
U is 20x6

Antworten (1)

Sajid Afaque
Sajid Afaque am 2 Apr. 2021
for num = 2:5
table_name.Properties.VariableNames(num) = {'New substitute name here in this case X(num-1)'};
end
  2 Kommentare
Francesco Grechi
Francesco Grechi am 2 Apr. 2021
i think that could be a good idea however if i put:
table_name.Properties.VariableNames(num) = {'X(num-1)'};
i got the following error (because matlab doesn't accept the ''):-->
'X(num-1)' is not a valid table variable name. See the documentation for isvarname or matlab.lang.makeValidName for more information.
Steven Lord
Steven Lord am 2 Apr. 2021
The ability to specify table variable names that are not valid MATLAB identifiers was introduced in release R2019b. Prior to that all table variable names had to be valid MATLAB identifiers (as per the isvarname function.)
T = array2table(magic(4))
T = 4×4 table
Var1 Var2 Var3 Var4 ____ ____ ____ ____ 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1
newVariableNames = {'aardvark', 'baboon', 'camel', 'dog'};
T.Properties.VariableNames = newVariableNames
T = 4×4 table
aardvark baboon camel dog ________ ______ _____ ___ 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by