获取每个分位数中给定的总行数

时间:2019-06-11 11:51:04

标签: group-by dplyr conditional-statements

我有一个数据集,其中包含一列subcat和winning_price。我有以下代表代码。

subcat=c(102,141,142)
subcat=rep(subcat,each=8)

winning_price=c(19050,19350,19900,20550,21100,21200)
winning_price=rep(winning_price,4)

ndata=data.frame(subcat,winning_price)

我已使用以下代码计算了每个子猫的Q1,Q2和Q3:

n=ndata %>%
  group_by(subcat) %>% 
  group_modify(~{
    quantile(.x$winning_price, probs = c(0.25, 0.50,0.75)) %>% 
      tibble::enframe()
  }) 

#adding an quartile column
n$Quantile=ifelse(n$name=="25%","Q1",ifelse(n$name=="50%","Q2",ifelse(n$name=="75%","Q3",0)))



输出看起来像这样:

enter image description here

问题是我需要创建一个数据集,其中包含每个子目录中的行数和百分位值。那是给子猫的 a)102,第1季度的存储桶为<= 19275; Q2在19275和19625之间;第三季度在19625至20687.5之间; Q4> = 20687.5 b)141,Q1的存储桶<= 19762.5; Q2在19762.5和20225之间;第三季度在20225至20687.5之间; Q4> = 20687.5 c)142,Q1的桶≤19762.5,Q2在19762.5和20825之间;第三季度在20825至21125之间; Q4是> = 21125

实际数据集应为:

enter image description here

预期数据集:

enter image description here 等等。

谢谢!

0 个答案:

没有答案