2017-08-03 3 views
0

Ich habe ein Zellenfeld 1300x6, das alle Zahlen ist. Im Folgenden finden Sie ein Beispiel für eine Zeile:Kombinieren Sie Spalten Zeile für Zeile in Matlab

| 000 | 00 | 00 | 12 | 345 | 678 |

Was ich erreichen möchte, ist es, alle Zahlen in jeder Zeile in einer Zelle verkettet zu haben, so dass es ein 1300x1-Array ist. Ich habe versucht cat, vertcat, horzcat und reshape aber sie alle nur die Spalten ineinander verschmelzen, mehr Zeilen erstellen. Ich möchte, dass es so aussieht:

| 000000|

Ist das möglich?

+2

sind sie Strings? Willst du, dass sie Saiten sind? –

+0

Sie sind Zellen oder Doppel, und ich möchte sie als eine X-Achse in einem Diagramm verwenden können. –

+1

Zellen und verdoppelt Ich hoffe, du meintest. Sie können aber nicht sein, sie müssen Strings sein, da Sie nicht 000 und 00 als Zahl haben können, sie sind beide 0. Dann wollen Sie sie als String? –

Antwort

1

Ich stimme mit AnderBiguri überein, dass es seltsam ist, dass Sie 000 als Wert in einer numerischen Matrix haben würden, aber Sie sagen, dass es alle Zahlen sind, also lassen Sie uns damit gehen.

A = randi(255,[1300,6],'uint8'); %numbers 
B = num2str(A); %characters with spaces 
for ct = 1:size(B,1),C{ct,1}=strrep(B(ct,:),' ','');end 
C %characters without spaces 
+0

Danke das ist genau das, was ich wollte. Entschuldigung für jeden Mangel an Klarheit in meiner Frage. –

Verwandte Themen