2017-03-22 6 views
0

Ich versuche, ein ganzes Array in einer einzelnen Tabellenzelle zu speichern. Wenn ich versuche, array2table oder cell2table, sieht das Ergebnis wie diese (zweite Spalte):Wie speichere ich ein ganzes Array in einem einzelnen Tabellenelement?

enter image description here

Während ich es so sein wollen:

enter image description here

Es bedeutet, dass ich das will Auto Spalte Elemente auf diese Weise sein:

[554,996,53,25] 
[326,805,37,14] 
... 

Was kann ich tun, um jedes Array in einer einzelnen Tabellenzelle zu speichern und eine Trennung der Elemente des Arrays zu vermeiden? Ich habe dies bereits versucht:

formatSpec = '[%f %f %f %f]'; 
sprintf(formatSpec, x, y, w, h) 

Aber das Ergebnis kommt mit Zitate an den Seiten:

'[554,996,53,25]' 
'[326,805,37,14]' 

Aber ich will nicht das ‚‘.

+0

Die 'car' Säule * ist * auf diese Weise erhalten. Die Werte sind ein einzelnes Array in derselben Tabellenspalte. 'sprintf' gibt einen String zurück, daher ist es logisch, dass das Ergebnis in Anführungszeichen gesetzt ist. – excaza

+0

@excaza danke. Du hast recht, der Fehler, den ich bekommen habe, war aus einem anderen Grund. –

Antwort

1

Angenommen, Auto ist die Matrix von Zahlen, die Sie manipulieren möchten und hat die Größe numRows von 4 Spalten, haben Sie versucht, mit mat2cell jede Zeile in eine eigene Zelle zu brechen und von dort zu arbeiten?

valCell = mat2cell(cars, ones(size(cars,1),1), 4); 
%valCell{1} holds row 1 as one cell 
% the table could be contructed of this cell array 
% and a cell array of your names {names, values} 

Nicht ganz sicher Ihr Endziel aber das sollten Sie auf Ihrem Weg

Verwandte Themen