我正在尝试在R中创建decil。但是它说中断不是唯一的。 我的数据框中有大约7000行。我想根据供应商的销售情况创建他们的报价表。因此,每个十分位数的销售额应相等,并且供应商的数量应不断增加
我尝试在StatMeasures
中使用十分位函数。也尝试过排名和cut()
函数。 rank + cut给我的输出不正确,因为每个十分位数的总和应该相同。 Decile
函数显示中断不是唯一的
library(StatMeasures)
View(decile(vector = as.integer(dfTest["Sales"])))
tempVec <- as.vector(dfTest$Sales)
View(decile(vector = as.integer(tempVec)))
a_ranks <- rank(dfTest["Sales"], ties.method = "first")
dfTest$Decile <- cut(a_ranks, quantile(a_ranks, probs=0:10/10),
include.lowest=TRUE, labels=FALSE)
预期结果:
随着十分位数的销售商数量的增加,销售分成10个相等的十分位。
实际结果:
不正确的结果导致等级+切分。
错误:分位数函数中的断点不唯一