有没有办法在 R 的 SummaryBy 函数中获得第 75 个百分位数?
Is there a way to get the 75th percentile in the SummaryBy function in R?
我试图将我的数据集折叠成一个变量的平均值和第 75 个百分位数,但我似乎找不到正确的方法来说明我想要第 75 个百分位数。下面的代码。
six_month_agg <- summaryBy(pd ~ industry + region + date, FUN=c(mean, 0.75), data=six_month_pd)
我们可以使用quantile
library(doBy)
summaryBy(pd ~ industry + region + date, FUN=
function(x) c(Mean = mean(x), Quantile = quantile(x, probs = 0.75)), data=six_month_pd)
使用可重现的例子
data(warpbreaks)
out <- summaryBy(breaks ~ wool + tension, warpbreaks, FUN=function(x)
c(Mean = mean(x), Quantile = quantile(x, probs = .75)))
str(out)
#'data.frame': 6 obs. of 4 variables:
# $ wool : Factor w/ 2 levels "A","B": 1 1 1 2 2 2
# $ tension : Factor w/ 3 levels "L","M","H": 1 2 3 1 2 3
# $ breaks.Mean : num 44.6 24 24.6 28.2 28.8 ...
# $ breaks.Quantile.75%: num 54 30 28 31 39 21
我试图将我的数据集折叠成一个变量的平均值和第 75 个百分位数,但我似乎找不到正确的方法来说明我想要第 75 个百分位数。下面的代码。
six_month_agg <- summaryBy(pd ~ industry + region + date, FUN=c(mean, 0.75), data=six_month_pd)
我们可以使用quantile
library(doBy)
summaryBy(pd ~ industry + region + date, FUN=
function(x) c(Mean = mean(x), Quantile = quantile(x, probs = 0.75)), data=six_month_pd)
使用可重现的例子
data(warpbreaks)
out <- summaryBy(breaks ~ wool + tension, warpbreaks, FUN=function(x)
c(Mean = mean(x), Quantile = quantile(x, probs = .75)))
str(out)
#'data.frame': 6 obs. of 4 variables:
# $ wool : Factor w/ 2 levels "A","B": 1 1 1 2 2 2
# $ tension : Factor w/ 3 levels "L","M","H": 1 2 3 1 2 3
# $ breaks.Mean : num 44.6 24 24.6 28.2 28.8 ...
# $ breaks.Quantile.75%: num 54 30 28 31 39 21