Effacer les filtres
Effacer les filtres

How do I add a column to table?

968 vues (au cours des 30 derniers jours)
m m
m m le 19 Nov 2015
I have created a CSV file. When I use the "readable" function to load the table, I get an 8x10 table. I want to expand the table to an 8x11 table, where the 11th column should have the values from a function I have created. How do I do this?

Réponse acceptée

Walter Roberson
Walter Roberson le 15 Mai 2024
Modifié(e) : MathWorks Support Team le 5 Juin 2024
You can add a new table variable by using either dot notation or the "addvars" function. Dot notation adds new variables to the end of table. If you use the "addvars" function, then you can choose the location of the new table variable. 
For example, this code creates a table and two column vectors. Then it adds the column vectors to the table as new variables.
LastName = ["Sanchez";"Johnson";"Li";"Diaz";"Brown"];
Age = [38;43;38;40;49];
Smoker = logical([1;0;1;0;1]);
T = table(LastName,Age,Smoker);
T.NewData = rand(5,1) % Dot notation adds new variable to end of table
MoreData = rand(5,1);
T = addvars(T,MoreData,'Before',1) % Add variable to beginning of table
If you generate a table variable name by evaluating an expression, you can pass it as the name of the new variable with either of these syntaxes. 
TodaysData = "Data " + string(datetime("today"));
T.(TodaysData) = rand(5,1)
YesterdaysData = "Data " + string(datetime("today") - 1);
T = addvars(T,rand(5,1),'NewVariableNames',YesterdaysData,'Before',1)
For more information, see the following documentation:
Add, Delete, and Rearrange Table Variables
https://www.mathworks.com/help/matlab/matlab_prog/add-and-delete-table-variables.html

Plus de réponses (3)

Sean de Wolski
Sean de Wolski le 20 Nov 2015
T.EleventhColumn = rand(8,1);
Where 'EleventhColumn' is the name you want for the variable.
  2 commentaires
Theodore Wilkening
Theodore Wilkening le 13 Mar 2020
this works best.
Yifei
Yifei le 26 Nov 2022
The most convenient approach.

Connectez-vous pour commenter.


thang ngo
thang ngo le 24 Juil 2020
This helps to pass a name as parameter:
name = 'new_column'
T.(name) = rand(8,1);

Ehab Abdelkarim
Ehab Abdelkarim le 3 Août 2018
you may want to check the following link https://de.mathworks.com/help/matlab/matlab_prog/add-and-delete-table-variables.html

Catégories

En savoir plus sur Tables dans Help Center et File Exchange

Produits


Version

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by