栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

熊猫-按连续范围分组

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

熊猫-按连续范围分组

一种方法:

df = pd.Dataframe([[1,3,10], [4,10,7], [11,17,6], [18,26, 12],[27,30, 15], [31,40,6], [41, 42, 6]], columns=['start','end', 'height'])

用于

cut
分组:

df['groups']=pd.cut(df.height,[-1,0,5,10,15,1000])

查找断点:

df['categories']=(df.groups!=df.groups.shift()).cumsum()

然后

df
是:

"""   start  end  height    groups  categories0      1    3      10   (5, 10]01      4   10       7   (5, 10]02     11   17       6   (5, 10]03     18   26      12  (10, 15]14     27   30      15  (10, 15]15     31   40       6   (5, 10]26     41   42       6   (5, 10]2"""

定义有趣的数据:

f = {'start':['first'],'end':['last'], 'groups':['first']}

并使用

groupby.agg
功能:

df.groupby('categories').agg(f)"""   groups  end start    first last firstcategories          0 (5, 10]   17     11(10, 15]   30    182 (5, 10]   42    31"""


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/646750.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号