Merging two arrays of two different types
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
khalida basheer
am 5 Mär. 2021
Beantwortet: Jorg Woehl
am 6 Mär. 2021
How can I merge two arrays of two different typesI used the following code but lost the values of the array that contains numbers ????
a=[1 2 3]
a =
1 2 3
>> b=['aa'];
>> c=[a b]
c =###aa
0 Kommentare
Akzeptierte Antwort
Jorg Woehl
am 6 Mär. 2021
You are combining double values (from a) with character values (from b), which yields a character array according to MATLAB's class conversion rules. The doubles 1, 2, and 3 are converted to their Unicode character equivalents, which are control characters and only result in empty characters/whitespace when displayed.
If you want your resulting vector c to contain the numbers from a instead, first convert the doubles to characters using num2str. Using it on the array a will lead to additional whitespace, which you may or may not want... but you can strip that out using the replace function:
c = [num2str(a) b]
c =
'1 2 3aa'
c = replace([num2str(a) b], ' ', '')
c =
'123aa'
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Data Type Conversion finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!