我使用sklearn.preprocessing.KBinsDiscretizer(n_bins=10, encode='ordinal')
离散化了我的连续特征。
策略为'quantile'
,作者为defalut。但是我的数据分布实际上不是均匀的,例如70%的行为0。
然后我得到了KBinsDiscretizer.bins_edges=[0.,0.,0.,0.,0.,0.,0.,256.,602., 1306., 18464.]
。
有很多重复的垃圾箱。那么,有没有一种方法可以将重复项放入KBinsDiscretizer的垃圾箱中?
KBinsDiscretizer
计算输入的分位数。如果输入的最多样本为零,则10个分位数将具有多个零。我期望的结果是具有唯一容器的离散器。对于我提到的示例,为[0.,256.,602., 1306., 18464.]
。
答案 0 :(得分:1)
那是不可能的。设置strategy='uniform'
以实现您的目标。