dplyr :: group_by%>% резюмирует (среднее) возвращает идентичные средние значения - PullRequest
0 голосов
/ 06 февраля 2019

Я хочу показать средства для группы, у которой в 2015 году были значения более 10000, и для группы, которая этого не сделала.

Я мог бы добиться этого с помощью ddply, используя следующие коды:

ddply(df, .(over10000 = c(df$"2015" > 10000)),function(x){data.frame("2015mean"=mean(x$"2015"))})

(Вот так выглядит мой фрейм данных. Столбец over10000 показывает, если df $ "2015"> 10000.)

head(df)   
   2013  2014  2015 over10000   
1   634   630   620     FALSE   
2  4330  4410  4520     FALSE   
3  4600  4680  4760     FALSE   
4 39100 40800 41800      TRUE   
5  3710  3750  3730     FALSE   
6 11900 12400 12800      TRUE

Итак, я хотел получить тот же результатс помощью dplyr с помощью group_by и суммировать.Однако каким-то образом я получаю среднее значение для всего столбца 2015 года вместо групп.
Вот код, который я использовал:

df %>% dplyr::group_by(over10000) %>%
  dplyr::summarize("2015mean" = mean(df$"2015", na.rm=TRUE))  

Кто-нибудь знает, почему у меня возникает эта проблема?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...