How do I add a column to table?

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?

 Respuesta aceptada

Walter Roberson
Walter Roberson el 15 de Mayo de 2024
Editada: MathWorks Support Team el 5 de Jun. de 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

Más respuestas (3)

Sean de Wolski
Sean de Wolski el 20 de Nov. de 2015

31 votos

T.EleventhColumn = rand(8,1);
Where 'EleventhColumn' is the name you want for the variable.

2 comentarios

Theodore Wilkening
Theodore Wilkening el 13 de Mzo. de 2020
this works best.
Yifei
Yifei el 26 de Nov. de 2022
The most convenient approach.

Iniciar sesión para comentar.

thang ngo
thang ngo el 24 de Jul. de 2020

14 votos

This helps to pass a name as parameter:
name = 'new_column'
T.(name) = rand(8,1);
Ehab Abdelkarim
Ehab Abdelkarim el 3 de Ag. de 2018

2 votos

you may want to check the following link https://de.mathworks.com/help/matlab/matlab_prog/add-and-delete-table-variables.html

Categorías

Productos

Versión

R2024a

Etiquetas

Preguntada:

m m
el 19 de Nov. de 2015

Editada:

el 5 de Jun. de 2024

Community Treasure Hunt

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

Start Hunting!

Translated by