Trouble concatenating two tables
11 次查看(过去 30 天)
显示 更早的评论
Hello, I am having some issues concatenating two tables. When I try, i get the error "Cannot concatenate the table variable 'Header_Name' because it is a cell in one table and a non-cell in another." I believe this is because in one table the contents of this column are all numbers while in another they have letters. When I look at them, the one with letters has apostrophes around them while the one with numbers doesn't. Can anyone help me with this?
0 个评论
回答(3 个)
Star Strider
2017-4-21
It will likely be easier to convert the numbers to a cell array of strings.
Something like this will work:
numbers = randi(9, 10, 1);
num_str = num2str(numbers);
num_cell = mat2cell(num_str, ones(10, 1), 1);
Those could probably be combined into a single line. I left them separate to demonstrate how the code works.
Experiment with your table entries to get the result you want.
2 个评论
Star Strider
2017-4-24
My idea is to to convert only the numbers to a cell array of strings, then put them into your table in place of the numbers, leaving your existing cell array of strings unchanged.
Your table then contains only a cell array of strings.
Gabor
2021-5-20
I would add to check the missmatching table variables by comparing them by for eg.:
class(Table1.Column_name(1))
class(Table2.Column_name(1))
0 个评论
Pufang Yan
2022-4-1
the columns of 2 tables have different value types. one is numeric, the other is text.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!