How do I concatenate char and double classes?
34 ビュー (過去 30 日間)
古いコメントを表示
I'm attempting to concatenate data of 2 different class types.
The first type is of Class char, with the size being 7 x 11.
z =
DUE
DUE
BT
PRE_REL
BT
BT
PRE_REL
The 2nd type is of Class double, with the size being 7 x 11.
y =
58570 -1245.0111 -4807.8222
58570 -1245.0111 -4807.8222
58572 -1400.0111 -4950.8222
58574 -1550.0111 -5000.8222
58576 -1600.0111 -5150.8222
58576 -1600.0111 -5150.8222
58578 -1750.0111 -5200.8222
The desired output would be a single array that looks like this:
DUE 58570 -1245.0111 -4807.8222
DUE 58570 -1245.0111 -4807.8222
BT 58572 -1400.0111 -4950.8222
PRE_REL 58574 -1550.0111 -5000.8222
BT 58576 -1600.0111 -5150.8222
BT 58576 -1600.0111 -5150.8222
PRE_REL 58578 -1750.0111 -5200.8222
In looking through the Programmer's Guide I'm not sure if I need to make a simple conversion or not. Any ideas would be helpful. Thanks.
0 件のコメント
採用された回答
Azzi Abdelmalek
2014 年 5 月 2 日
%Example
z =strvcat('DUE','DUE','BT','PRE_REL')
data=rand(4,3)
%convert your char array to cell array
c=cellstr(z)
%covert your double array to call array
n=num2cell(data)
out=[c n]
その他の回答 (1 件)
Mischa Kim
2014 年 5 月 2 日
4 件のコメント
Image Analyst
2014 年 5 月 2 日
You poor guy. You must be using an old version of MATLAB. The wonderful new table data type only came into being with R2013b. Please upgrade because like Mischa said, the table is the best way to go. Otherwise you'll be stuck using a cell array. Definitely more complicated to use. See the FAQ on cell arrays: http://matlab.wikia.com/wiki/FAQ#What_is_a_cell_array.3F to give you an idea of when you need to use parentheses and when you need to use braces . Actually I see Azzi and Jose-Luis already gave you code for that so just use that if you can't upgrade.
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!