Format-Spalte in dplyr-Kette
Ich habe dieses Daten-set:
dat <-
structure(list(date = structure(c(1L, 1L, 1L, 2L, 2L, 2L, 3L,
3L, 3L, 4L, 4L), .Label = c("3/31/2014", "4/1/2014", "4/2/2014",
"4/3/2014"), class = "factor"), site = structure(c(1L, 2L, 1L,
2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L), .Label = c("a", "b"), class = "factor"),
clicks = c(73L, 64L, 80L, 58L, 58L, 61L, 70L, 60L, 84L, 65L,
77L), impressions = c(55817L, 78027L, 77017L, 68797L, 92437L,
94259L, 88418L, 55420L, 69866L, 86767L, 92088L)), .Names = c("date",
"site", "clicks", "impressions"), class = "data.frame", row.names = c(NA,
-11L))
dat
date site clicks impressions
1 3/31/2014 a 73 55817
2 3/31/2014 b 64 78027
3 3/31/2014 a 80 77017
4 4/1/2014 b 58 68797
...
Ist es möglich, das Datum der Formatierung einer Spalte in der Kette? (Ich habe auch versucht, mit Hilfe with
, aber das gibt nur die Spalte Datum.)
library(dplyr)
> dat %.%
+ select(date, clicks, impressions) %.%
+ group_by(date) %.%
+ summarise(clicks = sum(clicks),
+ impressions = sum(impressions)) %.%
+ as.Date(Date, format = '%m/%d/%Y')
Error in as.Date.default(`__prev`, Date, format = "%m/%d/%Y") :
do not know how to convert '__prev' to class “Date”
Wenn ich weiß nicht die Formatierung in der Kette ist, funktioniert es. Ich weiß, es ist einfach zu schreiben, das außerhalb der Kette, aber ich möchte bestätigen, ob dies machbar ist.
dat %.%
select(date, clicks, impressions) %.%
group_by(date) %.%
summarise(clicks = sum(clicks),
impressions = sum(impressions))
dat$date <- as.Date(dat$Date, format = '%m/%d/%Y')
InformationsquelleAutor maloneypatr | 2014-04-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist das, was Sie wollen?
Hey Robert, ich bin laufen in einige Probleme - manchmal - wo
Error: cannot modify grouping variable
. Gibt es eine Möglichkeit zum zurücksetzen dergroup_by
ohne Zuweisung eine neue variable Gruppe?verwenden
ungroup()
zum zurücksetzen der GruppierungInformationsquelleAutor Robert Krzyzanowski
Manchmal die
Error: cannot modify grouping variable
Meldung kommt, wenn du versuchst zu laufengroup_by()
Operationen auf etwas, was bereits gruppiert. Sie könnten versuchen, einschließlichungroup
ersten. In der syntax von Robert die Antwort:InformationsquelleAutor Pat W.