|
|
Angleichen von zwei Datensaetzen (Resampling) |
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.08.2013, 22:03
Titel: Angleichen von zwei Datensaetzen (Resampling)
|
 |
|
 |
|
Hallo an alle Forennutzer,
nachdem ich mich durch das gefuehlte halbe Internet gegraben habe und auch immer wieder auf Loesungsansaetze fuer sehr aehnliche Probleme gestossen bin, bin ich leider mit dem Folgenden nicht weitergekommen:
ich habe zwei Datensaetze aus unterschiedlichen Quellen, die gleichzeitig gemessen wurden und die ich jetzt gern gemeinsam ausrichten (bzw. auf die selbe Laenge und sampling rate trimmen) wuerde. Beide beginnen zum gleichen Zeitpunkt und dauern etwas weniger als 1000ms (ein Datensatz ist 1.0234ms laenger als der andere). Auch die Anzahl der Samples fuer diesen Zeitraum ist verschieden (1024 vs. 500).
Ich habe bereits die Signal Processing-Funktion resample ausprobiert, die meine Daten aber ziemlich verfremdet hat. Auch von padding habe ich hier und da gelesen, bin aber leider nicht so richtig hinter die Codes gestiegen, die ich gefunden habe... Ich bin leider ziemlich unerfahren mit jedweder Form der Datenanalyse in Matlab Mein Anliegen: kann mir jemand ein paar nuetzliche Tipps geben, welche Schritte ich sinnvollerweise tun sollte? Ich moechte den Code gern selbst schreiben, aber ich bin unsicher, wie ich das ganze am besten loese (vor allem wegen des sehr krummen Unterschieds in der Laenge der Messungen und meiner Unsicherheit inwiefern ich das mit dem resampling vereinbaren kann).
Vielen Dank fuer Eure Hilfe!
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 15.08.2013, 22:23
Titel:
|
 |
Hallo,
ich würde interp1 verwenden, um die Daten auf ein gemeinsames Zeitgitter zu bringen.
Wenn das nicht weiterhilft, bitte mehr Details liefern, inwiefern das problematisch ist.
Grüße,
Harald
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.08.2013, 00:25
Titel: Danke!
|
 |
Hallo Harald,
erstmal vielen Dank fuer die schnelle und vor allem hilfreiche Antwort. Nach einigem Experimentieren bin ich erstmal dem, was ich haben will, sehr viel naeher gekommen (ich kannte die Interpolationen noch nicht ). Ich habe noch eine Frage (um sicher zu sein, dass ich es richtig verstanden habe): mein Ziel ist es den kuerzeren Datensatz an den laengeren anzupassen. Wenn Du sagst "gemeinsames Zeitgitter" - dann hat Matlab durch die Interpolation die fehlenden 1.0234 Millisekunden drangehaengt, richtig?
Viele Gruesse von einem dankbaren Gast.
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 17.08.2013, 12:25
Titel:
|
 |
Hallo,
ich bin nicht sicher, ob ich dich richtig verstehe.
Wenn du beispielsweise Daten über 10 Sekunden hast, einmal 10 Samples und einmal 1000 Samples pro Sekunde, dann kann Interpolation sinnvoll sein. Man muss sich lediglich darüber im klaren sein, dass man dabei künstlich Daten erzeugt.
Wenn einmal Daten über 10 Sekunden und einmal Daten über 30 Sekunden aufgenommen wurden, dann wäre es jedoch recht fraglich, ob man per Interpolation (bzw. eigentlich Extrapolation) da noch vernünftige Werte errechnen kann.
Grüße,
Harald
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 17.08.2013, 23:11
Titel:
|
 |
Hallo Harald,
danke, dass Du Dir die Zeit nimmst. Es ist so: ich habe zwei Arten Datensaetze, die ich im Zusammenhang auswerten moechte. Jeder Datensatz besteht aus 200 individuellen Messungen. Der eine Datensatz besteht aus Messungen ueber jeweils 998 ms (500 samples in diesem Zeitraum) und der andere ueber 999ms (1024 samples in diesem Zeitraum), beide haben (in jeder Messung) gleichzeitig begonnen. Es ist also nur ein geringfuegiger Unterschied (im Vergleich zu Deinem Beispiel). Ich wusste bis jetzt nicht, wie ich gleichzeitig die (zeitliche) Laenge und die Anzahl der samples angleichen kann. Was interp1 mit den Daten gemacht hat, sieht eigentlich ganz gut aus. Ich war nur nicht sicher, ob interp1 jetzt tatsaechlich nicht nur 1024 Datenpunkte aus den 500 gemacht hat, sondern auch die 1 Millisekunde "ergaenzt" hat.
Danke fuer Deine Hilfe!
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 18.08.2013, 00:05
Titel:
|
 |
Hallo,
Zitat: |
Ich war nur nicht sicher, ob interp1 jetzt tatsaechlich nicht nur 1024 Datenpunkte aus den 500 gemacht hat, sondern auch die 1 Millisekunde "ergaenzt" hat. |
Du kannst beides haben, je nachdem, welche Stützstellen (drittes Argument von interp1) du für die Interpolation vorgibst.
Grüße,
Harald
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 19.08.2013, 09:04
Titel:
|
 |
Ok, so hab' ich es gemacht - ich danke Dir!
|
|
|
|
|
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.
|
|