when converting a time into an array I lose the date column

>> class(tab)
ans =
'timetable'
cc=table2array(tab)

3 个评论

You have datetime objects for your Data. Your Profit is datatype double. You are trying to create an array. Arrays must have the same datatype for all entries. You would therefore either need to convert Profit to datetime or else convert the datetime entry to double. What double would you like to convert the datetime to?
i want to convert this datatime to arraystring (i want to use it using uitable and display it in a table)

请先登录,再进行评论。

回答(2 个)

The first class is a 16x1 timetable. This means the time column is not a variable but is the indexing column.
You don't have to convert this into a table to have access to your data. You can use your_table.Profit(1) to return 7.9867e5 for example. If you need the date, then use your_table.Time(1).
If you still wish to convert this into a table, you can do as following:
for i = 1:length(a.Time)
cc{i,1} = your_table.Time(i);
cc{i,2} = your_table.Profit(i);
end
"(i want to use it using uitable and display it in a table)"
Convert the timetable to table and use accordingly -
tableName = timetable2table(tableName);
fig = uifigure;
uit = uitable(fig,"Data",tableName);

1 个评论

Right. uitable() that are children of uifigure() can handle table() objects directly.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Tables 的更多信息

提问:

2023-8-15

Community Treasure Hunt

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

Start Hunting!

Translated by