|
|
MAT-Dateien -> Untervariable -> in Liniendiagramm in S |
|
Unrealmirakulix |

Forum-Anfänger
|
 |
Beiträge: 44
|
 |
|
 |
Anmeldedatum: 11.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 2015a
|
 |
|
|
 |
|
Verfasst am: 13.05.2013, 15:09
Titel: MAT-Dateien -> Untervariable -> in Liniendiagramm in S
|
 |
|
 |
|
Hallo,
ich habe aus nun schon recht vielen Audiomessungen mittels Matlab einige MAT-Dateien mit Messdaten erstellt. Nun muss das ganze ausgewertet werden.
Zum Verständnis: Die Messdaten entspringen einem s.g. Satztest: Bei dem Test müssen Worte von Probanden während gleichzeitig auch noch ein Störgeräusch vorgespielt wird, erkannt und nachgesprochen werden. Es gibt zwei verschiedene Tests: bei "Reference" ist es immer ein bestimmtes Störgeräusch und bei dem normalen nicht-"Reference"-Test gibt es drei verschiedene nämlch m, w oder fastl (männlicher Sprecher, weiblicher Sprecher oder (Fastl-)Rauschen).
Zunächst ist die Frage wie ich das am einfachsten und effektivsten importiere:
(Die MAT-Dateien liegen alle im Ordner "C:\MATLAB71\work\Competing Talkers\Results")
jede der Dateien ist nach folgendem Schema aufgebaut: p + "_" + x + "dB" + " " + SNR + y. Mit p = Probandennamen array + eventuell AddOn; x = dB-Wert = -25, -20, -15, -10, -5, 0, 5, 10, 15, 20; y = "" oder "_Reference".
Reference ist eine andere Messreihe als die ohne Reference.
So entstehen je Probanden die folgenden Dateien, für z.B. Johann Meier:
-- JohannMeier_0dB SNR.mat, JohannMeier_5dB SNR.mat, JohannMeier_-5dB SNR.mat, JohannMeier_10dB SNR.mat, JohannMeier_15dB SNR.mat, JohannMeier_20dB SNR.mat
-- JohannMeierAddOn_-10dB SNR.mat, JohannMeierAddOn_-15dB SNR.mat, JohannMeierAddOn_20dB SNR.mat, JohannMeierAddOn_-20dB SNR.mat, JohannMeierAddOn_-25dB SNR.mat
-- JohannMeierAddOn_0dB SNR_Reference.mat, JohannMeierAddOn_5dB SNR_Reference.mat, JohannMeierAddOn_-5dB SNR_Reference.mat, JohannMeierAddOn_-10dB SNR_Reference.mat, JohannMeierAddOn_10dB SNR_Reference.mat
Das ist das Maximum, also es können manche Dateien auch nicht existieren, dann sollen sie einfach nicht in die "Wertung" einbezogen werden.
Ob nun "JohannMeier" oder "JohannMeierAddOn" im Namen steht ist egal. beides gehört zusammen. Es wurde nur an zwei verschiedenen Tagen gemessen. Zur Not kann ich alle Dateien natürlich auch umbenennen.
Innerhalb der Dateien existiert immer ein <1x1struct> mit Namen "results". Darin befindet sich, wenn es eine "Reference"-Messung ist ein Wert namens "Ergebnis_proz_Reference", indem eine ein prozentualer Wert als einfache Zahl steht (Prozent der richtigen Antworten des Probanden; also z.B. "38" wenn der Proband 38% richtig hatte).
Wenn es keine "Reference"-Messung ist finden sich die interessanten Werte in drei Werten namens "Ergebnis_proz_m", Ergebnis_proz_w" und Ergebnis_proz_fastl".
Die Werte sollen dann nachher noch über alle Probanden gemittelt werden und so ein Diagramm für Referenz, eins für männlicher, eins für weiblicher Sprecher und eins für Fastl-Rauschen entstehen. Das wäre dann das Ziel des Ganzen...
Ich hoffe es einigermaßen klar geworden war ich vor mir habe und was ich wie in Matlab importieren möchte.
Wenn es noch Fragen gibt - ich fürchte, dass dies der Fall ist - einfach schreiben.
Schöne Grüße,
Daniel
|
|
|
|
|
Unrealmirakulix |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 44
|
 |
|
 |
Anmeldedatum: 11.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 2015a
|
 |
|
|
 |
|
Verfasst am: 14.05.2013, 21:21
Titel:
|
 |
sieht wesentlich schwieriger zu lösen aus, als es ist. Letztlich geht es um das Packen von Variablen aus mehreren MAT-Dateien in ein paar Vektoren.
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 15.05.2013, 11:25
Titel: Re: MAT-Dateien -> Untervariable -> in Liniendiagramm
|
 |
Hallo Unrealmirakulix,
Die Frage ist ziemlich umfangreich. Es ist im Allgemeinen effektiver, wenn Du Dich zunächst auf ein Teil-Problem konzentrierst und dann mehrere kurz und knappe Fragen stellst.
Du hast so weit ich sehe das Ziel des Programms geschrieben, aber keine Frage dazu gestellt. Was erwartest Du dann als Antwort? Oder mit anderen Worten: Wie können wir Dir helfen?
Gruß, Jan
|
|
|
Unrealmirakulix |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 44
|
 |
|
 |
Anmeldedatum: 11.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 2015a
|
 |
|
|
 |
|
Verfasst am: 15.05.2013, 17:45
Titel:
|
 |
ok, also die erste Frage ist, wie ich die genannten Variablen in "results" innerhalb jeder einzelnen MAT-Datei einlesen kann und in einem Vektor sammeln kann.
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 16.05.2013, 08:59
Titel:
|
 |
|
 |
|
Hallo Unrealmirakulix,
Es ist mühsam aus der Orginal-Frage herauszupuhlen, was genau "die genannten Variablen" sind. Auch "innerhalb jeder einzelnen MAT-Datei einlesen" ist bereits eine nicht triviale Aufgabe - ansonsten hättest Du es ja bereits selbst gelöst oder es zumindest versucht. Was dann noch "in einem Vektor sammeln" genau bedeutet, erfordert auch entweder tiefere einsicht in deine Ziele oder eine Kristallkugel.
Ich gehe davon aus, dass du mit der bisherigen Strategie keine hilfreichen Antworten bekommst. Ich schlage vor, du postest, was du bisher versucht hast um die einzelnen Schritte zu lösen und was dabei nicht funktioniert hat. Als alternative kannst du auch einen Programmierauftrag im entsprechenden Unterforum und für eine angemessene Entlohnung posten.
Eine allgemeine Regel ist, dass eine Frage in weniger als 30 Sekunden verstehbar sein muss und die Antwort weniger als 5 Minuten benötigt, damit in einem Forum von freiwilligen Interessierten Lösungen zu erwarten sind. Jedes Detail, dass man für eine Antwort erraten muss, und sei es nur ob Zeilen- oder Spalten-Vektoren erzeugt werden, zählt als zusätzliche Minute Arbeitszeit, weil es anstrengend ist sich in die nicht erklärten Erfordernisse fremder Programme hineinzuversetzen.
Wenn ich deine Frage lese, schätze ich als Zeit für die Erstellung einer brauchbaren Lösung mitsamt Rückfragen etc. etwa 2 bis 3 Stunden, also weit mehr als ich im Forum bereit bin zu arbeiten.
Viel Erfolg, Jan
|
|
|
Unrealmirakulix |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 44
|
 |
|
 |
Anmeldedatum: 11.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 2015a
|
 |
|
|
 |
|
Verfasst am: 16.05.2013, 10:48
Titel:
|
 |
Die Aufgabe ist erst mal:
Zitat: |
(Die MAT-Dateien liegen alle im Ordner "C:\MATLAB71\work\Competing Talkers\Results")
jede der Dateien ist nach folgendem Schema aufgebaut: p + "_" + x + "dB" + " " + SNR + y. Mit p = Probandennamen array + eventuell AddOn; x = dB-Wert = -25, -20, -15, -10, -5, 0, 5, 10, 15, 20; y = "" oder "_Reference". |
darin dann innerhalb "results" bestimmte Werte laden. (das kann ich dann schon eintragen.
Also muss ich
?
|
|
|
Unrealmirakulix |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 44
|
 |
|
 |
Anmeldedatum: 11.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 2015a
|
 |
|
|
 |
|
Verfasst am: 16.05.2013, 14:27
Titel:
|
 |
habe das hier im Forum gefunden: http://www.gomatlab.de/viewtopic,p,1789.html#1789.
Nur muss ich eben nicht txt-Dateien sondern mat-files einlesen, die ja etwas anders aufgebaut sein werden.
Wenn ich also alle Dateien einlesen will und in jeder unter "results" den Wert einer bestimmten Variable, die in jedem file gleich ist einlesen will, kann ich das wie tun?
Pseudocode wäre meiner Meinung nach für alle Files:
Das wäre der erste Schritt. Help
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 16.05.2013, 16:06
Titel:
|
 |
Hallo Unrealmirakulix,
Es ist eine schlechte Idee Daten innerhalb des Matlab-Ordners zu speichern. Davon rate ich ausdrücklich ab.
Zitat: |
jede der Dateien ist nach folgendem Schema aufgebaut: p + "_" + x + "dB" + " " + SNR + y. Mit p = Probandennamen array + eventuell AddOn; x = dB-Wert = -25, -20, -15, -10, -5, 0, 5, 10, 15, 20; y = "" oder "_Reference". |
Meinst du "jeder Datei-Name oder sind die Datein selbst so "aufgebaut"? Ich verstehe den Aufbau in beiden Fällen nicht. Ein paar relevante Beispiele wären wohl hilfreich.
Gruß, Jan
|
|
|
Unrealmirakulix |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 44
|
 |
|
 |
Anmeldedatum: 11.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 2015a
|
 |
|
|
 |
|
Verfasst am: 16.05.2013, 17:15
Titel:
|
 |
hier mal z.B.:
Vorname: Stefan + Nachname: 1
(anonymisiert, sonst steht da statt 1 eben Meier oder ähnlich)
-> Datei = Stefan1_-5dB SNR.mat -> http://prntscr.com/1566zu
es gibt dann noch die andere Variante (Referenz):
Vorname: Daniel + Nachname = Test
(wie oben hier ein anonymisierter Nachname)
-> Datei = DanielTest_10dB SNR_Reference.mat -> http://prntscr.com/15679v
|
|
|
|
|
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 - 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.
|
|