您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python:检查值属于哪个bin

Python:检查值属于哪个bin

可能为时已晚,但为将来参考,numpy具有执行此操作的功能

http://docs.scipy.org/doc/numpy/reference/generated/numpy.digitize.html

>>> my_list = [3,2,56,4,32,4,7,88,4,3,4]
>>> bins = [0,20,40,60,80,100]
>>> np.digitize(my_list,bins)
array([1, 1, 3, 1, 2, 1, 1, 5, 1, 1, 1])

结果是与my_list中的每个元素也属于的bin中的bin对应的索引数组。请注意,该函数还将合并落在您的第一个和最后一个合并边缘之外的值:

>>> my_list = [-5,200]
>>> np.digitize(my_list,bins)
array([0, 6])

熊猫也有类似的东西:

http://pandas.pydata.org/pandas-docs/dev/basics.html#discretization-and- quantiling

>>> pd.cut(my_list, bins)
Categorical: 
array(['(0, 20]', '(0, 20]', '(40, 60]', '(0, 20]', '(20, 40]', '(0, 20]',
       '(0, 20]', '(80, 100]', '(0, 20]', '(0, 20]', '(0, 20]'], dtype=object)
Levels (5): Index(['(0, 20]', '(20, 40]', '(40, 60]', '(60, 80]',
                   '(80, 100]'], dtype=object)
python 2022/1/1 18:28:17 有489人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶