R 语言:使用 dplyr 按组计算分位数(quantile)


发布日期 : 2022-12-15 18:47:12 UTC

访问量: 10 次浏览

R语言 如何按组计算量值

在这篇文章中,我们将讨论如何在R编程语言中按组计算量值。

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

语法:

quantile( data, probs)

参数 :

  • data:要计算其百分位数的数据
  • probs:百分位数的值

为了给数据分组,我们使用 dplyr 模块。
该模块包含一个名为 group\_by() 的函数,其中需要传递要分组的列。

语法:

group\_by(column\_name)

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

语法:

summarize( 函数 )

例子1:通过概率为 0.5 的四分位数总结,按组计算分位数

# 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语言中按组计算量值?

例2:通过概率为 0.25、0.5 和 0.75 的三个四分位数来计算各组的数量级。

# 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))

输出:

如何在R语言中按组计算量值?