0
我有一個data.table
看起來像這樣如何挑選內類別topx行內間隔中的R
test <- data.table(variable=c(rep(1:5,100)),percent=abs(rnorm(500,0,1)),select=c(501:1000))
我想什麼做的是:每variable
,%>%
創造500周%的時間間隔(如[ 0,0.05),[0.05,0.1),[0.1,0.15)),所以最後我會有20*5
區間,然後在這些區間內挑選頂部(x)select
。
UPDATE
> test[,cut(percent,20),by="variable"]
variable V1
1: 1 (0.726,0.841]
2: 1 (0.496,0.611]
3: 1 (0.266,0.381]
cut
不工作我想順便說一下,因爲我沒有得到期望的間隔
你可以用'cut'創建間隔 – akrun
我認爲'cut'使同樣大小(以人口計算)的時間間隔,而我想,在長度方面同樣大小的間隔。 – quant
分多步執行。首先在每個組中創建一個分位數的因子,然後通過分位數與組之間的相互作用進行分組來進行選擇。可能對此有用的函數有:'cut','interaction','rank','order','quantile' – snaut