這裏的問題是:我有一個數據集,讓我們說:如何在R中裁剪數據?
a <- c(0,0,0,0,1,1,1,1,1,1)
我想將它切成片,甚至(例如5個)。問題是我不能使用分位數或切斷,因爲有些值重複,所以你不能設置不同的斷點。
> quantile(a)
0% 25% 50% 75% 100%
0 0 1 1 1
(僅使用兩個級別)(重複斷點)
> cut(a, 5)
[1] (-0.001,0.199] (-0.001,0.199] (-0.001,0.199] (-0.001,0.199] (0.801,1]
[6] (0.801,1] (0.801,1] (0.801,1] (0.801,1] (0.801,1]
Levels: (-0.001,0.199] (0.199,0.4] (0.4,0.6] (0.6,0.801] (0.801,1]
我知道可以產生這樣的載體:
b <- c(1,1,2,2,3,3,4,4,5,5)
,並使用它用於採樣。或者我可以使用循環和計數實例。但是這需要循環和一些笨拙的編碼。我正在尋找一種比這更好的簡單高效(R型)功能。
(我可以寫,但我不想推倒重來。)