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

Fehler bei Datenimport in 5D Matrix

 

rowJoe
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 57
Anmeldedatum: 25.11.12
Wohnort: ---
Version: 2015b
     Beitrag Verfasst am: 17.12.2012, 18:46     Titel: Fehler bei Datenimport in 5D Matrix
  Antworten mit Zitat      
Hallo,

ich lese mehrere Dateien in eine Matrix (5D) ein. Die ersten Daten werden in die Matrix geladen, allerdings erhalte ich die Fehlermeldung

"Subscripted assignment dimension mismatch" ,

wenn ich meine Daten in eine neue Dimension z.B

Code:
TestMatrixAlt(:,1,1;1;1)

TestMatrixNeu(:,1,1;1;2)


laden möchte. Bei dem Importieren der Daten in die "Alte" wird die 5. Ebene mit "1" angesprochen. Das scheint allerdings nicht korrekt zu sein.


Was kann ich anders amchen, damit es funktioniert?



Danke und viele Grüße,

jonas
Private Nachricht senden Benutzer-Profile anzeigen


Sigggi
Forum-Anfänger

Forum-Anfänger


Beiträge: 46
Anmeldedatum: 27.01.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.12.2012, 23:54     Titel:
  Antworten mit Zitat      
Hallo Jonas,

Du könntest zunächst prüfen, wie groß die Variable ist, die Du an TestMatrixNeu übergeben willst:
Code:

tmp = ...
size(tmp)
TestMatrixNeu(:,1,1,1,2) = tmp;
 

Hilft Dir das weiter?

Gruß Siggi.
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 18.12.2012, 00:05     Titel: Re: Fehler bei Datenimport in 5D Matrix
  Antworten mit Zitat      
Hallo rowJoe,

Bitte zeige uns den Code, der den Fehler produziert und eine vollständige Kopie der Fehlermeldung.

Die zwei gezeigten Codezeilen haben keine valide Matlab-Syntax, da die Dimensionen mit Kommas statt Semikolons getrennt werden müssen.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
rowJoe
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 57
Anmeldedatum: 25.11.12
Wohnort: ---
Version: 2015b
     Beitrag Verfasst am: 18.12.2012, 10:48     Titel:
  Antworten mit Zitat      
Hallo Siggi,
Hallo Jan,

vielen Dank für eure Mühe. Die Matrix wächst mit jeder neu eingelesenen Datei. Daher klappt das glaube ich so nicht, wie du (Siggi) das vorgeschlagen hattest. Sonst müssten alle Dateien vorab eingelesen werden und anschliefend nochmal eingelesen werden... Hört sich im ersten Augenblick recht kompliziert an...

Anbei nun der Code in leicht modifizierter Version, da ich ihn in der Originalversion glaube ich nicht rausgeben darf... (Klappt dadurch aber genauso wenig Wink )

[edit]
Der Fehler tritt, wie gesagt erst auf, sobald die Matrix um eine neue Dimension erweitert wird. Wenn ihr Testdateien benötigt (geht glaube ich ohne nicht so gut), lasst es mich bitte wissen. Ich stelle euch dann gerne welche online.

Folgende Fehlermeldung wird ausgegeben:
Subscripted assignment dimension mismatch.

Error in Version_gomatlab (line 275)
DataMessTeil1(:,1,CountSchnitt,PMerkmalID,StufeID) =
DataTemp(:,CountSchnitt);

[/edit]


Nochmal vielen Dank für eure Hilfe und besten Gruß,

Jonas

Version_gomatlab.m
 Beschreibung:
Bisheriger MATLAB Code

Download
 Dateiname:  Version_gomatlab.m
 Dateigröße:  10.28 KB
 Heruntergeladen:  353 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Sigggi
Forum-Anfänger

Forum-Anfänger


Beiträge: 46
Anmeldedatum: 27.01.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.12.2012, 13:07     Titel:
  Antworten mit Zitat      
Hallo,

offensichtlich ist die erste Dimension der Variable DataMessTeil1 verschieden von der ersten Dimension der Variable DataTemp. Könnte man mit
Code:

DataMessTeil1(1:length(DataTemp),1,CountSchnitt,PMerkmalID,StufeID) = DataTemp(:,CountSchnitt);
 

umgehen.

Gruß, Siggi.
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
rowJoe
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 57
Anmeldedatum: 25.11.12
Wohnort: ---
Version: 2015b
     Beitrag Verfasst am: 18.12.2012, 16:08     Titel:
  Antworten mit Zitat      
Sauber Siggi! Das klappt wunderbar!!! Laughing


Vielen Dank an euch zwei und (falls ich euch vorher nicht nochmal belästige) frohe Feiertage!

Jonas
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 - 2025 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.