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

mat-Dateien aus mat-Datei laden

 

FlowRyan

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.08.2011, 17:44     Titel: mat-Dateien aus mat-Datei laden
  Antworten mit Zitat      
Hallo liebe Forumuser,

hab jetzt schon des Öfteren durch die tolle SuFu Lösungen in diesem Forum gefunden. Heute jedoch leider nicht, weshalb ich nun meinen ersten Beitrag hier schreibe Wink

Zurzeit mache ich Messungen im Windkanal. Die Messwerte werden von einem Programm, welches recht umfangreich ist und ich nicht selbst geschrieben habe, ausgewertet.
Dadurch erhalte ich eine mat-Datei, in der 2 weitere mat-Dateien enthalten sind. Diese 2 mat-Dateien enthalten dann die ausgewerteten Variablen, mit denen ich verschiedene Plots erstellen möchte.

Nun zu meinem Problem:

1. Ich lade die Haupt mat-Datei mit load('hauptdatei.mat') in den WS

2. Jetzt will ich eine von den beiden mat-Dateien, also z.B. datei1.mat aus der hauptdatei.mat in den WS laden, damit ich dann auf die Variablen in der datei1.mat zugreifen kann. Dies scheint aber nicht mit load zu funktionieren und habe bisher auch keinen anderen brauchbaren Befehl gefunden.

Hoffe das war verständlich genug erklärt, ansonsten einfach nachfragen.

Würde mich sehr über eine Antwort freuen Smile

Gruß


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 08.08.2011, 18:41     Titel:
  Antworten mit Zitat      
Hallo

Zitat:

1. Ich lade die Haupt mat-Datei mit load('hauptdatei.mat') in den WS

2. Jetzt will ich eine von den beiden mat-Dateien, also z.B. datei1.mat aus der hauptdatei.mat in den WS laden, damit ich dann auf die Variablen in der datei1.mat zugreifen kann. Dies scheint aber nicht mit load zu funktionieren und habe bisher auch keinen anderen brauchbaren Befehl gefunden.


Punkt 1 verstehe ja noch, aber den Punkt 2 missverstehe ich komplett.
Wie soll das gehen in eine Mat Datei 2 andere Mat-Dateien zu verpacken?

Mat-Datei kann nur Variablen enthalten, welche du auch dann in Workspace siehst.
Code:

load('hauptdatei.mat')
whos
 

Welche Variablen nach dem Laden der Datei zeigt dir WHOS-Befehl?
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 08.08.2011, 18:41     Titel: Re: mat-Dateien aus mat-Datei laden
  Antworten mit Zitat      
Hallo FlowRyan,

Man kann in MAT-Files nur Variablen speichern, aber nicht andere MAT-Files. Meinst Du, dass die Namen der anderen MAT-Files im Haupt-MAT-File stehen?

Ich empfehle immer, die Ausgabe von LOAD in eine Variable zu schreiben:
Code:
Data = load(FileName);

Andernfalls werden die Variablen aus dem File in den WorkSpace geschrieben und können dort benutzte Variabeln aus Versehen überschreiben. das führt oft und immer wieder zu einem ernsten Durcheinander.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
FlowRyan

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.08.2011, 18:55     Titel:
  Antworten mit Zitat      
Ah ok, dann hab ich mich wohl mit den Dateiendungen vertan, bzw. hatte es bis jetzt noch nicht so wirklich verstanden.

Dann versuch ich es nochmal zu erklären.

Ich habe in einem Ordner eine .mat Datei. Diese lade ich dann in den WS. Im WS habe ich nun eine Datei mit dem Value <1x1 struct>. Mache ich einen Doppelklick auf die Datei, öffnet sich der Variables-Editor, in dem weitere 2 Dateien mit dem Value <1x1 struct> aufgeführt sind. Mache ich dann wieder einen Doppelklick auf eine der beiden Dateien, öffnet sich ein neues Tab mit den Variablem, die ich zum plotten benötige.

Ich suche halt einen Befehl, der mir den beschriebenen Vorgang durchführt.

Hoffe das war nun verständlicher Wink
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 08.08.2011, 19:11     Titel:
  Antworten mit Zitat      
Hallo,

du würfelst Dateien und (Struktur-)Variablen durcheinander. Die haben nicht das geringste miteinander zu tun, daher war deine ursprüngliche Frage beim besten Willen nicht zu verstehen.

Wenn du eine Struktur hast, kannst du auf die Felder mit
Code:
struktur.feld1

zugreifen. Wenn struktur.feld selbst eine Struktur ist, kann mit
Code:
struktur.feld1.feld2

auf Felder dieser Struktur zugegriffen werden.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 08.08.2011, 19:12     Titel:
  Antworten mit Zitat      
Hallo

ja jetzt verständlicher, aber das ist jetzt nicht einfach zu erklären.
Am Besten Hilfe lesen, wie man z.B mit Strukturen arbeitet:
http://www.mathworks.de/help/techdoc/matlab_prog/br04bw6-38.html
Private Nachricht senden Benutzer-Profile anzeigen
 
FlowRyan

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.08.2011, 19:22     Titel:
  Antworten mit Zitat      
Sorry für Doppelpost, aber Editieren geht anscheinend erst nach der Registration.

Hab das Problem nun selber gelöst, nachdem Jan S mich darauf aufmerksam gemacht hat, dass das keine mat-Dateien mehr sein können Embarassed
Sowas blödes, stand ich echt aufm Schlauch.

Für die, die trotzdem wissen wollen, wie man in die nächste Ebene einer Variable gelangt, hier die Lösung:

Wenn die Variable 'hauptvar' in den Workspace geladen wurde und z.B. ein Vektor a aus der zweiten Ebene benötigt wird:

Code:

b = hauptvar.ebene1.ebene2.a;
 


b ist dann der Vektor a, aus der ebene2 von hauptvar und steht nun auch separat im Workspace.

Gruß
 
FlowRyan

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.08.2011, 19:31     Titel:
  Antworten mit Zitat      
Vielen Dank allen für die schnelle Hilfe Smile
 
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.