WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Cell Arrays in Vektoren konvertieren

 

Supertyp
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 85
Anmeldedatum: 09.06.08
Wohnort: ---
Version: R2014a
     Beitrag Verfasst am: 24.10.2008, 17:24     Titel: Cell Arrays in Vektoren konvertieren
  Antworten mit Zitat      
Ist vielleicht trivial... Ich habe lange gesucht aber nichts passendes gefunden.
Ich möchte die Daten der Histogrammfunktion "hist" auslesen und als Vektor weiterverwenden. Innerhalb einer While-Schleife werden etwa 20 Histogramme mit unterscheidlichen Eingangsdaten erzeugt und einem Cell-Array zugewiesen (Matrixzuweisung funktioniert nicht):

Histo{index}=hist(Daten,-200:20:200)

Ich bekomme damit etwa 20 Zellen mit je 20 Werten. Soweit so gut. Leider gelingt es mir nicht für die weitere Verarbeitung die Daten der Cell-Arrays in Vektoren umzuwandeln. Jedes Cell-Array soll zu einem Zeilenvektor werden. Wo liegt das Problem?[/code]
Private Nachricht senden Benutzer-Profile anzeigen


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 25.10.2008, 11:23     Titel:
  Antworten mit Zitat      
Hallo,
sollte eigentlich so gehen
Code:

CellArray_A={};
for i=1:3
   CellArray_A{i}=round(rand(1,10*i)*10);
end
Vektor_B = [CellArray_A{:}]
 
Private Nachricht senden Benutzer-Profile anzeigen
 
Supertyp
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 85
Anmeldedatum: 09.06.08
Wohnort: ---
Version: R2014a
     Beitrag Verfasst am: 27.10.2008, 09:08     Titel:
  Antworten mit Zitat      
Danke Denny.

Code:
Vektor_B = [CellArray_A{:}]


Ich nehme an das ist die Standard-Prozedur für die Umwandlung von Cell-Arrays in Vektoren? In meinem Code sieht das so aus:

temp3(index) = [temp2{index}]

Leider bekomme ich dabei folgende Fehlermeldung:

Code:
??? Conversion to cell from double is not possible


Es handelt sich bei "temp2" immer um ein 1x21 double Cell Array, das in einer Schleife zu einem Vector konvertiert werden soll. Gibt es noch andere Möglichkeiten z.B. über das Abspeichern und wiedereinlesen des Cell-Array als Vector?
[/code]
Private Nachricht senden Benutzer-Profile anzeigen
 
Supertyp
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 85
Anmeldedatum: 09.06.08
Wohnort: ---
Version: R2014a
     Beitrag Verfasst am: 27.10.2008, 10:19     Titel:
  Antworten mit Zitat      
Nach vielen Rumprobieren bekomme ich endlich was ich will:
Code:

temp3(:,index) = [temp2{[index]}]
 


Es funktioniert, aber ich weiss nicht warum...
Private Nachricht senden Benutzer-Profile anzeigen
 
mb_matlab
Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 02.11.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.11.2008, 21:12     Titel:
  Antworten mit Zitat      
Code:

HistoMatrix(:,index)=hist(Daten,-200:20:200)
 


Übrigens ist

Code:

temp3(:,index) = [temp2{[index]}]
 


äquivalent zu

Code:

temp3(:,index) = [temp2{index}]
 


Gruß
Markus
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.