How can I convert a table into separate columns?

47 visualizaciones (últimos 30 días)
Bella
Bella el 28 de Jun. de 2020
Respondida: Steven Lord el 28 de Jun. de 2020
I tried to use table2array to turn the table with separate columns. However, matlab did not allow me to do so. I need to turn them into columns as I want to use the retime function to do daily average calculation afterwards. But before using retime function, I will need to be able to produce a timetable with the variables in each column in it. Any suggestions?

Respuestas (2)

Gaurav Aggarwal
Gaurav Aggarwal el 28 de Jun. de 2020
Hi Oi,
table2array tries to create a homogeneous array from the table i.e. the table should have same data type throughout. However, as I see it, your table consists of multiple data type and thus the error. Read more here:https://www.mathworks.com/help/matlab/ref/table2array.html
You can try creating a cell array and then extract the columns
cell_name = table2cell(table_name); %% converts table structure to cell structure
ithcol = cell_name(:,i); %% extracts ith column
var = cell2mat(ithcol); %% converts cell array to matrix (assumes same data type throughout column)
Hope this helps. Thanks.

Steven Lord
Steven Lord el 28 de Jun. de 2020
If you want to turn this into a timetable use table2timetable instead of table2array and array2timetable like I think you are trying to do.

Categorías

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

Community Treasure Hunt

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

Start Hunting!

Translated by