Uneven Table concatenation issue

10 次查看(过去 30 天)
I'm looking to make a table that has 9 row. Rows 1-7 have 5 columns, but rows 8 and 9 will only have 3 columns. MATLAB keeps giving me the error that this won't work because the rows must be the same length (Three columns have 9 items while 2 only have 7 items)
How can I get around this? Would adding zeros to the end of the data be easiest?
*The 8th and 9th row are also averages and std. deviations of their columns so if someone could also explain how to add these into the table without making them a new column, that would also be greatly appreciated!!

采纳的回答

per isakson
per isakson 2014-12-16
编辑:per isakson 2014-12-16
Not 0, NaN is a better choice.
The documentation on table discusses missing data at length , e.g. Clean Messy and Missing Data in Tables. Let that be a starting point.

更多回答(1 个)

Image Analyst
Image Analyst 2014-12-16
You can't do that. A table has to be rectangular and each column must be the same data type. You can add 0's in columns 8 and 9 like you suggested but that's the only way. Or you can use a cell array instead of a table and just have the columns 8 and 9 be empty/null.
Why not just have 2 arrays? Why does it all need to be in a single variable, especially since there's some difference in what columns 8 and 9 represent?

类别

Help CenterFile Exchange 中查找有关 Tables 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by