2017-10-15 97 views
0

我想根據第1,第3和第4個分位數(即0-25%,25%-75%,75% 100%)。我已經使用了下面的代碼,但是零不包含在分檔中。它們顯示爲NA。R中的切和分位數不包括零

rawdata1$usage4 <- cut(rawdata1$Usage_Percentage, 
     breaks = quantile(rawdata1$Usage_Percentage, 
     probs = c(-Inf,0.25,0.75,Inf),include.lowest=T),labels=F) 

錯誤quantile.default(rawdata1 $ Usage_Percentage,probs = C(-Inf, 0.25,: 'probs' 外[0,1]

然而,如果使用以下代碼並把它分成4個位數,垃圾箱就好了。

rawdata1$usage5 <- cut(rawdata1$Usage_Percentage, 
    breaks = quantile(rawdata1$Usage_Percentage), 
    include.lowest=T,labels=F) 
+2

你試過'probs = c(0,0.25,0.75,1),' – G5W

回答

0

要包括在裝箱,你還可以使用cut2功能從零。 這裏是一個例子。

data <- data.frame(vect = c(1.64, 1.5, 1.5, 1.41, 1.64, 1.64, 0, 1.45, 1.64, 1.5, 1.45, 0, 1.45, 1.64, 
          1.5, 1.5, 1.5, 0, 1.5, 1.41, 0.18, 0.09, 0.1, 0.09, 0.05, 0.09, 1.64, 1.5, 
          1.5, 0.1, 0.05, 0.09, 0, 5.82, 5.86, 5.86, 0, 5.82, 5.82, 5.82, 5.82, 5.82, 
          5.86, 5.86, 5.82, 0, 5.91, 9.41, 9.5, 5.91, 0, 9.45, 5.91, 9.45, 5.91, 0, 
          0, 9.55, 5.91, 9.55, 9.5, 9.55, 0, 5.82, 1.64)) 

data$bin <- factor(Hmisc::cut2(data$vect, g = 4), labels = c(1:4)) 
#g represents the number of quantile groups