Nach umfangreicher Suche zu diesem Thema kann ich immer noch nicht die Lösung finden. Ich habe einen einfachen Datenrahmen mit 43 Reihen und 2 Spalten. Meine erste Spalte enthält zwei Daten. Das erste Datum wird 19 Mal und das andere 24 Mal gedruckt. Die zweite Spalte ist Temperatur. Ich möchte die Maximal- und Minimaltemperatur nach Datum finden, aber mein Code druckt die Max- und Min-Werte des gesamten Datensatzes.group_by Datum Spalte in dplyr
Daten:
Date <- c(rep(x = "2017-05-18", each= 19), rep(x = "2017-05-19", each= 24))
Temperature_F <- c(35, 35, 42, 49, 57, 63, 64, 67, 70, 71, 72, 71, 72, 70, 66, 61, 57, 54, 50, 49, 45, 44, 44, 42, 40, 39, 47, 53, 61, 67, 69,
72, 75, 76, 77, 76, 77, 75, 71, 66, 62, 58, 54)
NWS_temps1 <- data.frame(Date, Temperature_F)
Hier ist mein dplyr Code, den mir den max und min für die gesamte Temperatursäule hält zu geben, wenn ich denke, es sollte mir die Maximal- und Minimaltemperatur von Datum geben.
NWS_temps1 <- tbl_df(NWS_temps1)
NWS_temps1 %>%
group_by(Date) %>%
summarise(Tmax = max(Temperature_F), Tmin= min(Temperature_F))
Der Ausgang ich erhalte, ist:
Tmax Tmin
77 35
Als ich bin der Hoffnung:
Date Tmax Tmin
2017-05-18 72 35
2017-05-19 77 39
Ich verstehe nicht, warum Datum nicht gruppiert werden, wie es sollte. Ich habe versucht, Datum zu einem Faktor zu ändern, wie es hier ist, Charakter, Datum Objekt und sogar POSIXct, aber mein Ergebnis ist immer der gesamte Datenrahmen max und min.
Jede Hilfe wird sehr geschätzt.
Danke.
Verwenden 'group_by', nicht' group_by_', mit der für Standardauswertung ist. – www
Das war ein Fehler meinerseits, da ich group_by ausprobiert habe. Sowohl group_by als auch group_by_ erzeugen das gleiche Ergebnis:/ – user3720887
Ich habe Ihren Code getestet und ersetze die 'group_by_' mit' group_by'. Es funktionierte. – www