поиск сводной статистики наименьшего числа в столбце по группе - PullRequest
1 голос
/ 04 марта 2020

Я хочу найти среднее значение, режим, 1-й, 3-й процентиль и стандартное отклонение наименьшего (наибольшего и среднего значения) ненулевого числа year_hh_inc при группировании по regional_schlüssel. Вот мои данные:

library(Rcurl)
x <- getURL('https://raw.githubusercontent.com/dothemathonthatone/maps/master/maindf_2_Anon.csv')

maindf <- read.csv(text = x, row.names=NULL, head =TRUE, dec = ',')

Я применяю следующий код:

  maindf %>%
  group_by(regional_schlüssel) %>%
  summarise(year_hh_inc = mean(min(year_hh_inc)))

Это не совсем то, что я хочу. Он фиксирует все минимальные значения (максимальное и стандартное отклонение) на regional_schlüssel, но ничего не говорит мне об их распределении.

1 Ответ

2 голосов
/ 04 марта 2020

После обмена сообщениями кажется, что ниже приведен один из способов получения желаемых значений. Сначала я определил группы, используя regional_schlüssel. Затем я искал наименьшее значение в каждой группе. values содержит числовые значения c, которые вы хотите обработать. Во втором summarize() я использовал пару функций для получения значений, которые вы ищете.

library(dplyr)
library(tibble)

group_by(maindf, regional_schlüssel) %>% 
summarize(values = min(year_hh_inc)) %>% 
summarize(average = mean(values),
          sd = sd(values),
          mode = names(which.max(table(values))),
          quantile25 = quantile(values)[2],
          quantile75 = quantile(values)[4])

  average    sd mode  quantile25 quantile75
    <dbl> <dbl> <chr>      <dbl>      <dbl>
1  15035. 4292. 12271      12271      17500

Другой способ заключается в следующем. Я думаю, что использование sumamry() делает нашу жизнь проще.

group_by(maindf, regional_schlüssel) %>% 
summarize(values = min(year_hh_inc)) -> res

c(summary(res$values), sd = sd(res$values),
  mode = names(which.max(table(res$values)))) %>% 
enframe

  name    value           
  <chr>   <chr>           
1 Min.    -8              
2 1st Qu. 12271           
3 Median  14999.5         
4 Mean    15035.3142857143
5 3rd Qu. 17500           
6 Max.    29999           
7 sd      4291.76642645115
8 mode    12271           
...