|
|
Variablen aus mat-Unterstruktur laden |
|
miss_ahnungslos |
Forum-Newbie
|
|
Beiträge: 5
|
|
|
|
Anmeldedatum: 17.02.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.02.2017, 19:44
Titel: Variablen aus mat-Unterstruktur laden
|
|
|
|
|
Guten Abend zusammen,
ich bin (ganz klassisch) Matlab-Neuling und gerade dabei, ein Script zu schreiben, das mir beim Auslesen von Prüfstandsdaten helfen soll.
Die Herausforderung für mich:
Die Variablen liegen nicht auf der ersten Unterebene des mat-Files, das vom Prüfstand gespeichert wird.
Vielmehr sieht es so aus:
Snapshotxxxx (als 1x1 struct) -> Data (1x1struct) -> MeasuredData (1x43 struct) -> dann kommen die Variablennamen (als yyyyx1 double), die ich ansprechen will.
Wobei xxxx die durchlaufende Nummer des Messprotokolls ist und yyyy die Anzahl an Messwerten.
Das Aufrufen von Snapshots funktioniert, und auch das Laden der Variable "Data" in den Workspace funktioniert. Aber ich schaffe es nicht, Variablen von den tieferen Ebenen aufzurufen.
Bisher habe ich die einzelnen Messwerte als Pfad einzeln aufgerufen, also z.B. zum Plotten von Zeile 3 der Measured Data definiert: y=Snapshot0094.Data.MeasuredData(3).Data
Ich muss mir aber pro Auswertung durchschnittlich fünf Messwerte ansehen. D.h. möchte ich ein anderes Messprotokoll laden, muss ich in jeder Variablendefinition die Nummer ändern.
Da ich eine relativ große Anzahl an Messprotokollen habe, ist das keine Lösung.
Könnte mir bitte jemand damit helfen? :/ ich wäre euch sehr dankbar.
|
|
|
|
|
miss_ahnungslos |
Themenstarter
Forum-Newbie
|
|
Beiträge: 5
|
|
|
|
Anmeldedatum: 17.02.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.02.2017, 11:24
Titel:
|
|
Kann mir denn niemand helfen? Oder ist die Frage zu trivial :/ Tut mir Leid, falls es so sein sollte.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.448
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 20.02.2017, 11:29
Titel:
|
|
Hallo,
welche Nummer möchtest du ändern?
Die 3 sollte ja relativ problemlos sein.
Das 0094 ist schwieriger, und solche dynamischen Variablennamen sind generell nicht empfehlenswert.
Wenn das nicht vermeidbar ist und die Daten aus einer .mat-Datei geladen werden, sollte folgendes gehen:
Grüße,
Harald
|
|
|
miss_ahnungslos |
Themenstarter
Forum-Newbie
|
|
Beiträge: 5
|
|
|
|
Anmeldedatum: 17.02.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.02.2017, 11:47
Titel:
|
|
Hallo Harald,
ich danke dir für deine Antwort! Mein Verdacht erhärtet sich, dass es sich für einen routinierten Anwender um totalen Mumpitz handelt
Ich möchte die 0094 ändern - d.h. ich definiere am Anfang des Scripts die Nummer des Snapshots, dessen Daten geladen werden sollen.
Leider lässt sich das mit den Dateinamen nicht anders lösen :/
Dein Code funktioniert geändert schon mal sehr gut Tausend Dank dafür!
Ich schaue jetzt mal, dass ich das ganze zum Laufen bringe. Ich bin leider einfach nicht firm, was die Matlab-Syntax angeht... aber da hilft wohl nur Üben, Hilfe lesen und von Experten lernen :/
Schönen Tag dir und danke nochmal für deine Hilfe.
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|