Ich habe schon einige Statistiken gemacht, aber ich bin völlig neu in R. Ich habe Messwerte von mehreren Sensoren, die ich überprüfen möchte. Dazu möchte ich für jeden Sensor den Mittelwert in den vorherigen und folgenden 3 Minuten vergleichen.
Meine Daten sieht etwa so aus:Vergleichen von Werten in gruppierten Zeilen in R
time sensor reading
10:01 B 86.7
10:01 A 87.6
10:02 A 81.1
10:02 B 32.1
10:03 B 80.0
10:03 A 20.8
10:04 A 35.2
10:04 B 10.0
10:05 B 26.2
10:05 A 59.0
10:06 A 94.7
10:06 B 6.8
10:07 B 50.4
10:07 A 5.0
10:08 A 71.4
10:08 B 83.5
10:09 B 33.3
10:09 A 82.5
Für 10.05 Die Ergebnisse sollten in etwa so aussieht:
time sensor reading mean
...
10:05 A 86.7 43.8
10:05 B 87.6 51.36666667
...
Ich weiß, dass es eine Möglichkeit in SQL ist durch den Datensatz mit einer gruppierten Verbindungs , gefilterte und dann aggregierte Form von sich selbst. Aber ich versuche hier SQL zu vermeiden und bastle mit Aggregat-, Teilmengen- und Schleifenfunktionen. Aber nichts scheint zu funktionieren.
Ich habe das Thema gegooglet, aber entweder ich die falschen Fragen stellen oder es gibt keine Antwort gefunden werden. Oder die Sache ist so einfach, dass ich eine wichtige Lektion verpasst habe.
Bitte zeigen Sie die volle erwartete Ausgabe basierend auf dem von Ihnen bereitgestellten Beispiel. Sie können 'rollmean' von' zoo' überprüfen – akrun