📜  如何在 R 中按组计算分位数?

📅  最后修改于: 2022-05-13 01:55:21.533000             🧑  作者: Mango

如何在 R 中按组计算分位数?

在本文中,我们将讨论如何在 R 编程语言中按组计算分位数。

要获得所需的四分位数,请使用 quantile()函数。

为了对数据进行分组,我们使用 dplyr 模块。该模块包含一个名为 group_by() 的函数,其中必须传递要分组的列。

为了找到分组数据的分位数,我们将使用 quantiles()函数调用 summarise 方法。

示例 1 :通过以 0.5 的概率汇总一个四分位数,按组计算分位数

R
# import library
library(dplyr)
 
# create dataframe
df<-data.frame(x=c(2,13,5,36,12,50),
               y=c('a','b','c','c','c','b'))
 
# create groups
# calculate quantiles by group
df %>% group_by(y) %>%
  summarize(res=quantile(x,probs=0.5))


R
# import library
library(dplyr)
 
# create dataframe
df<-data.frame(x=c(2,13,5,36,12,50),
               y=c('a','b','c','c','c','b'))
 
# create groups
# find quantiles
df %>% group_by(y) %>%
  summarize(first=quantile(x,probs=0.25),
            second=quantile(x,probs=0.5),
            third=quantile(x,probs=0.75))


输出

示例 2 :通过汇总概率为 0.25、0.5 和 0.75 的三个四分位数,按组计算分位数。

R

# import library
library(dplyr)
 
# create dataframe
df<-data.frame(x=c(2,13,5,36,12,50),
               y=c('a','b','c','c','c','b'))
 
# create groups
# find quantiles
df %>% group_by(y) %>%
  summarize(first=quantile(x,probs=0.25),
            second=quantile(x,probs=0.5),
            third=quantile(x,probs=0.75))

输出