我是R的新手,我一直在面對這個問題。 每當我試圖使十分位數或四分位數使用「dplyr」包,我十分位獲得合併到更少的組。 像欲10個不同的基團,而我只得到6,4或有時只3. 我知道R期望可以組/合併小十分位數,如果它有較小的數據。 但我想避免這個問題。請幫忙! 謝謝!如何避免在R中自動合併Deciles?
代碼:
mydata <- data.frame(col1= c(0,00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,5,3,12,5,65,23,65984,21,5469,321,6,100,200,300,400,500,600,700,800,900,1000,1100,1200,1300,1400,1500,5233,18000))
DecLocations <- quantile(mydata$col1, probs = c(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9))
mydata$decile <- findInterval(mydata$col1,c(-Inf,DecLocations, Inf))
require(dplyr)
mydata$decile<-factor(mydata$decile)
decile_grp<-group_by(mydata,decile)
decile_summ_test<-summarize(decile_grp, total_cnt=sum(col1))
decile_summ_test<-arrange(decile_summ_test, desc(decile))
View(decile_summ_test)
在這裏,我只獲得了第6個十分位數,因爲[R融合了小十分位數。這是我在這裏試圖避免的。我希望獲得全部10個十進制數,即使它們的數目非常小。
最小的可重複的例子? – CPak
您應該提供一個簡單的數據示例來說明您的問題以及您期望的輸出內容。請不要在評論中添加代碼;相反,用您的代碼/示例/更新編輯原始帖子。 – CPak
@CPAK現在完成了! – PerryThePlatipus