我有一系列633个值,其中约50%为0.理想情况下,我想使用qcut()
来区分我的值(用于等值线映射),但这会给我一个错误,因为非唯一的bin边缘。
分离数据的最佳方法是什么,对非零值进行分类,然后将它们重新组合成一列,使得零值的值为0,而量化值为categorical.label + 1
?
答案 0 :(得分:5)
如果您使用NaN
替换零值,cut()
和qcut()
的行为符合预期;这些行将具有Categorical.labels
:
-1
)
df['density'].replace(to_replace=0, value=np.nan, inplace=True)