如何从频率表中计算百分位数

时间:2017-06-16 20:01:59

标签: r percentage

假设我有以下数据:

data<-data.frame(col1=c(1,3,5,6),occurrences=c(10,4,5,8))

代表如下:

1 1 1 1 1 1 1 1 1 1 3 3 3 3 5 5 5 5 5 6 6 6 6 6 6 6 6

如何计算百分位数25和50?

2 个答案:

答案 0 :(得分:2)

您可以quantile来自stats个包裹;

quantile(dB, c(.25, .50)) 

对于您的示例数据集:

dB 
 #  [1] 1 1 1 1 1 1 1 1 1 1 3 3 3 3 5 5 5 5 5 6 6 6 6 6 6 6 6

这就是答案:

# > quantile(dB, c(.25, .50))
#   25% 50% 
#   1   3 

要使dB使用以下代码:

dB <- rep(data$col1, data$occurrences)

答案 1 :(得分:1)

你可以,如果你只想要Q1和中位数(即25%和50%)那么下面应该有用。

summary(data)