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

Konvertierung von Cell Array in Double funktioniert nicht

 

Jonas.Hornung

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.03.2013, 08:03     Titel: Konvertierung von Cell Array in Double funktioniert nicht
  Antworten mit Zitat      
Hallo,

ich stehe vor einem unerklärlichen Problem:

Ich habe ein Cell Array mit dem Namen Mask4T (1x200) das ich gern in das Format Double überführen würde.

Dazu habe ich mir eine Schleife gebeaut:

For i = 1:200

Mask4T (i) = Mask4T{i}

end

Mask4T (double) sollte also ebenfalls 200 Einträge im Format Double enthalten. In meinem konkreten Fall enthält es nach dem Durchlaufen der Schleife nur Nullen, obwohl das Cell Array Einträge enthält, die ungleich Null sind.

Ich habe die Schleife schon für mehrere ähnliche Konvertierungen genutzt, nur in einem konkreten Fall werden nur Nullen ausgespuckt. Ich weiß nicht, ob das hilfreich ist, aber ich werde mal die Einträge des Cell Array und meinen Code posten. Vielleicht könnt ihr das mal mit eurer Matlab-Version durchspielen. Mask4T (double) sollte definitiv nicht nur Nullen enthalten, das ist das Problem.



Mask4{i} =

0 0 0 0 0 0 0 0 0 0 0 0 0 1,82463433098932 0 1,23054564795317 0 0,633249739195951 0 0 0 0 0 0 0 1,91585205648823 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,27598471639975 0 0 0 0 0 0 0,628424562428762 0 1,18830354210537 0 0 0 0 0 0 0 0 0 0 0 0 0 0,574358735969708 0 0 0 0 0 2,04769695535421 0 0 0 0 0 0 0 0 0 0 0,296460550972703 0 0 0 0 0 0 0 0 0 0,321809557502463 0 0,330532607750710 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,30683837876475 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,394729947066437 0 0 0 0 0 0 0 0 0 0 0 0 0,622935301276974 0 0 0 0 0 0,603894190831289 0,349036111701408 0 0 0,317672009929873 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6,39738145490022 0 0,292411447365879 0 0 0 0 0;


Mein Code:

for i = 1:200

Mask4T(i) = Mask4T{i}

end


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 09.03.2013, 09:15     Titel:
  Antworten mit Zitat      
Hallo,

wenn du auf beiden Seiten dieselbe Variable verwendest, macht das nicht wirklich Sinn. Entweder ist Mask4T ein Cell Array oder ein Double Array, aber es kann nicht ein Teil Cell Array und ein Teil Double Array sein.
Am einfachsten wäre es wohl, fertige Konvertierungsfunktionen wie cell2mat zu verwenden.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Jonas.Hornung

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.03.2013, 09:39     Titel:
  Antworten mit Zitat      
Spitze.

Klappt perfekt. Manchmal sieht man den Wald vor lauter Bäumen nicht.
 
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.