Как суммировать переменную по месяцам / годам в R? - PullRequest
0 голосов
/ 19 ноября 2018
library(dplyr)
library(plotly)
library(lubridate)

googlesearch <- read.csv("multiTimeline.csv", header = FALSE, stringsAsFactors = FALSE)

googlesearch2 <- googlesearch [-1, ]
googlesearch2 <- googlesearch2 [-1, ]
colnames(googlesearch2)[1] <- 'Date' 
colnames(googlesearch2)[2] <- 'NumberofSearch'

googlesearch2$Date <- as.Date(googlesearch2$Date) 
googlesearch2 <- googlesearch2 %>%
  filter(Date > "2015-01-04" & Date < "2018-05-27")

googlesearch3 <- googlesearch2 %>%
  transform(googlesearch2$Date, Date = as.Date(as.character(Date), "%Y-%m-%d"))
googlesearch3 <- googlesearch2 %>%  
  mutate(month = format(Date, "%m"), year = format(Date, "%Y")) %>%
  group_by(Date, yearMon = as.yearmon(Date, "%m-%d-%Y"))

googlesearch3$Date <- as.numeric(googlesearch3$NumberofSearch)

googlesearch3 <- googlesearch3 %>%  
  mutate(month = format(Date, "%m"), year = format(Date, "%Y")) %>%
  group_by(Date, yearMon = as.yearmon(Date, "%m-%d-%Y")) %>%
  summarise(NumberofSearch_sum = sum(NumberofSearch))

data <- tbl_df(googlesearch3)

data %>%
  group_by(yearMon) %>%
summarise(NumberofSearch_mon = sum(NumberofSearch))

Я знаю, что это грязно. Я получаю эту ошибку и не знаю почему. Добавление примера кода.

Error in summarise_impl(.data, dots) : 
  Evaluation error: invalid 'type' (character) of argument.

1 Ответ

0 голосов
/ 19 ноября 2018

В отсутствие воспроизводимого примера попробуйте заменить последний фрагмент кода примера следующим:

library(hablar)

data %>%
  retype() %>%
  group_by(yearMon) %>%
  summarise(NumberofSearch_mon = sum(NumberofSearch))

Может быть, это работает:)

...