Nota: Il titolo di questa interrogazione è stato modificato per renderlo la questione canonica per problemi quando plyr
funzioni mascherano le loro controparti dplyr
. Il resto della domanda rimane invariato.Perché riepilogare o mutare non funziona quando carico `plyr` dopo` dplyr`?
Supponiamo che io ho i seguenti dati:
dfx <- data.frame(
group = c(rep('A', 8), rep('B', 15), rep('C', 6)),
sex = sample(c("M", "F"), size = 29, replace = TRUE),
age = runif(n = 29, min = 18, max = 54)
)
Con il buon vecchio plyr
posso creare un po 'di tabella che riassume i miei dati con il seguente codice:
require(plyr)
ddply(dfx, .(group, sex), summarize,
mean = round(mean(age), 2),
sd = round(sd(age), 2))
Il look di uscita in questo modo:
group sex mean sd
1 A F 49.68 5.68
2 A M 32.21 6.27
3 B F 31.87 9.80
4 B M 37.54 9.73
5 C F 40.61 15.21
6 C M 36.33 11.33
Sto provando a spostare il mio codice su dplyr
e sull'operatore %>%
. Il mio codice prende DF quindi lo raggruppa per gruppo e sesso e quindi lo riassume. Cioè:
dfx %>% group_by(group, sex) %>%
summarise(mean = round(mean(age), 2), sd = round(sd(age), 2))
Ma la mia uscita è:
mean sd
1 35.56 9.92
Che cosa sto facendo di sbagliato?
Grazie!
+1 per i vostri pochi secondi :-) – A5C1D2H2I1M1N2O1R2T1
Non capisco perché così poche persone notare che l'avvertimento:/ – hadley
@hadley 'fortune :: fortuna (9)' – Gregor