Korrelation zweier zeitlicher Messreihen unterschiedlicher Taktung

Methoden der Zeitreihenanalyse
Antworten
DisasterArea
Beiträge: 1
Registriert: Sa Feb 02, 2019 6:33 pm

Korrelation zweier zeitlicher Messreihen unterschiedlicher Taktung

Beitrag von DisasterArea » Sa Feb 02, 2019 6:53 pm

Hallo,

ich habe als Datenbasis eine Umweltmessung, welche über einen Zeitraum Messungen am selben Ort zu einem physikalischen Parameter, z.B. Temperatur, mittels zweier Messsensoren aufgezeichnet hat. Es geht mir darum zu prüfen, in wieweit die beiden Sensoren zum selben Messergebnis kommen, wieweit ihre Messwerte also miteinander korrelieren.

Das Problem ist, dass beide Sensoren asynchron laufen und auch ihre Messungen in unterschiedlichen Frequenzen durchführen. Angenommen, die zeitliche Auflösung sei eine Sekunde, so sieht die Messreihe in etwa so aus (T=Zeitpunkt, S1 = Messwert Sensor 1, S2 = Messwert Sensor 2):

T , S1 , S2
T01, 22.3, 22.2
T02, - , -
T03, 22.4, -
T04, - , 22.3
T05, 22.4, -
T06, - , -
T07, 22.3, -
T08, - , 22.2

Im konkreten Fall gehe ich davon aus, dass mir zu dem einen Sensor in etwa ein Takt von 60 Sek. vorliegt, der andere Sensor mit 180 Sek., wobei hier Schwankungen um mehrere Sekunden möglich sind (180 +/- 10).
Ich bin nun kein Statistik Guru und müsste zunächst in dicken Wälzern zu angewandter Statistik blättern, aber vielleicht geht es hier ja schneller.

Also: Gibt es eine statistische Lösung für die Auswertung und wenn ja, wie ist diese mit R! zu machen? Ein paar Stichworte, unter denen ich dazu etwas finden könnte oder auch eine Lösung in R! wären wunderbar.

Gruß

DisasterArea

Tilmann
Beiträge: 4
Registriert: Do Mär 28, 2019 12:59 pm

Re: Korrelation zweier zeitlicher Messreihen unterschiedlicher Taktung

Beitrag von Tilmann » Do Mär 28, 2019 1:42 pm

Hallo DisasterArea,

falls die Temperaturen sich innerhalb 180 Sekunden nicht schnell ändern, gibt es die Möglichkeit den vorhergehenden Wert zu kopieren.
Das geht mit zoo::na.locf() (Last Observation carried forward), dazu müssen die Daten in einem data.frame vorliegen. Alternativ tidyvers::fill().

Eine andere Möglichkeit wäre, die Zeilen mit nur einem Temperaturwert zu unterdrücken.

Gruß
Tilmann

consuli
Beiträge: 405
Registriert: Mo Okt 10, 2016 8:18 pm

Re: Korrelation zweier zeitlicher Messreihen unterschiedlicher Taktung

Beitrag von consuli » Di Apr 02, 2019 9:24 pm

Mein Vorschlag wäre:

- Einen zweiten gröberen Zeitindex "Tgrob" erzeugen, z.B. Tag und Stunden
- Dann S1 und S2 über Tgrob mit merge( ... , all= TRUE) redundant aufjoinen
- neue Variable "Tdiff" erzeugen, die die Zeitdifferenz des originären Zeitindex T enthält
- neue Variable "S1undS2vorhanden" erzeugen
- Redundanten Datensatz nach Tneu, S1undS2vorhanden, Tdiff aufsteigend sortieren
- Dubletten mit der Funktion unique() entfernen


Auf diese Weise erhältst Du jeweils einen Datenzeile pro Zeitindex "Tgrob" für die es beide Sensordaten gibt.
„Et benedictio Dei omnipotentis: Patris + et Filii + et Spiritus Sancti + descendat super vos et maneat semper.

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast