2016-09-25 25 views
1

我正在把我的變量從離散變成連續的。我現在如何獲得每個間隔的中位數值。一些誤解與切()函數

sample <- c(30,16,12,40,14,30,5,5,5,5,38,30,45,22,30,31,22,35,45,29) 
sample$Cut <- cut(sample,seq(min(sample),max(sample),(max(sample)-min(sample))/r),include.lowest = TRUE) 

在我的神奇的r值

r = log(length(sample), base = 2) 
    r = trunc(r) 
    r = r + 1 

現在我需要從每一個得到這個中間值間隔:

[5,13](13,21](21, 29(29,37(37,45] 對於這個例子我得9,17,25,33,41。

對不起這麼愚蠢的問題。謝謝你在前進。

回答

1

你有斷點:

b <- seq(min(sample), max(sample), (max(sample)-min(sample))/r) 
# [1] 5 13 21 29 37 45 

因此中間點,對於那些間隔:

(b[-length(b)] + b[-1])/2 
# [1] 9 17 25 33 41