Sto imparando il pacchetto dplyr in R e mi piace molto. Ma ora ho a che fare con i valori di NA nei miei dati.R: sostituzione dei valori NA per mezzo di ora con dplyr
Vorrei sostituire qualsiasi NA per la media del corrispondente ora, ad esempio, con questo molto facile esempio:
#create an example
day = c(1, 1, 2, 2, 3, 3)
hour = c(8, 16, 8, 16, 8, 16)
profit = c(100, 200, 50, 60, NA, NA)
shop.data = data.frame(day, hour, profit)
#calculate the average for each hour
library(dplyr)
mean.profit <- shop.data %>%
group_by(hour) %>%
summarize(mean=mean(profit, na.rm=TRUE))
> mean.profit
Source: local data frame [2 x 2]
hour mean
1 8 75
2 16 130
Posso usare il dplyr comando di trasformazione per sostituire la NA del del giorno 3 nel profitto con 75 (per 8:00) e 130 (per 16:00)?
Sono venuto qui perché non ho notato io ho dimenticato la chiave: 'na.rm = TRUE' – jbkunst