Seite 1 von 1

Mittelwerte in Paneldatensatz für jeden Tag bilden

Verfasst: Do Apr 22, 2021 1:23 pm
von bafor26048
Hallo liebes R Forum,
ich bin bei meiner aktuellen Arbeit mit R auf folgendes Problem gestoßen und bin für jede Hilfe dankbar.

Ich betrachte Daten von Benzinpreisen der Tankstellen in Deutschland. Da die Daten leider zu groß sind, kann ich sie hier nicht posten aber sie sind unter folgendem Link frei verfügbar:

https://dev.azure.com/tankerkoenig/_git ... oenig-data

Lädt man nun z.B. die Daten für 2020 herunter, so bekommt man diese jeweils in einzelnen Ordnern für jeden Monat im Jahr 2020.

Die Daten habe ich dann wie folgt in R eingelesen:

Code: Alles auswählen

fileNames01 <- list.files(path="~/Dieselpreise/2020/01", pattern = "*.csv", full.names = TRUE)
januar <- do.call("rbind", lapply(fileNames01, function(x) {read.csv(file = x, header = TRUE, sep = ",")})) 


gleiches mache ich dann mit allen weiteren Monaten (Februar entsprechend im Ordner 02, März 03 usw.) um am Ende dann alle Monate über jahr <- bind_rows(januar,februar,märz,...) zusammenzufügen.

Betrachtet man nun z.B. den Monat Januar sehen die Daten ca. so aus:
Date | Station_ID | Diesel
1. 2020.01.01 00:01:06 | A | 1.159
2. 2020.01.01 06:01:04 | A | 1.189
3. 2020.01.01 14:03:02 | A | 1.179
4. 2020.02.01 00:01:06 | A | 1.159
5. 2020.02.01 06:01:04 | A | 1.189
6. 2020.02.01 14:03:02 | A | 1.179

und entsprechend so geht es weiter für die weiteren Tankstellen (Station_ID B,C,D usw.).
Mein Problem ist hier, dass der Datensatz alle Änderungen der Dieselpreise an einem Tag enthält. Ich möchte jedoch einen Wert pro tag für jede Tankstelle haben.
Meine Idee war hier also mit dem Mittelwert zu arbeiten.
Ich möchte also am Ende für jede Station einen Mittelwert über die angegebenen Dieselpreise für jeden Tag im Januar (und später dann für alle Monate) berechnen.

Bisher habe ich versucht das Problem mit "dplyr" über den group_by Befehl zu lösen, damit bin ich aber noch nicht wirklich zum Erfolg gekommen.
Hat jemand hier eine Idee wie ich das schaffen könnte?

Ich hoffe ich konnte mein Problem ausführlich genug darstellen und erklären.
Vorab schonmal vielen Dank für eure Hilfe :)

Re: Mittelwerte in Paneldatensatz für jeden Tag bilden

Verfasst: Do Apr 22, 2021 2:01 pm
von ruedi_br
Um mit Datumsangaben zu arbeiten, Paket lubridate probieren (neue Spalte mit dem Tag generieren), danach dann gruppieren und mitteln.
S.a. unter https://r4ds.had.co.nz/
VG
Ruedi