Converting a table of mixed numeric-string content to an array
显示 更早的评论
I have a table with mixed numeric&string content:
M =
rep file condition corrAns
___ __________________ _________ _______
1 'stimuli/03C1.wav' 'C1' 2
1 'stimuli/03C4.wav' 'C4' 1
......................
I'd like to convert M to an array, so as to be able to save it as a spreadsheet using xlswrite, which requires an array as input.
However, the command
table2array(M)
gives the error
Cannot concatenate the table variables 'rep' and 'file', because their types are double and cell.
I tried converting the first and final columns from double to cell using
M(:,1) = table2cell(M(:,1))
or even
for i_row=1:row_N
M(i_row,1) = num2cell(M(i_row,1));
M(i_row,4) = num2cell(M(i_row,4));
end
but both of these conversions lead to the same error. Any suggestions?
采纳的回答
更多回答(1 个)
Steven Lord
2019-5-13
0 个投票
I recommend using writetable instead of using xlswrite. You can tell writetable to write to a spreadsheet file.
1 个评论
Peter Perkins
2019-5-14
What Steve said. writetable is a much better choice.
It also looks like Condition could usefully be converted to categorical, depending on what you're doing with it.
类别
在 帮助中心 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!