1、什么是数值分组?
这里说的数值分组是指对数值型字段,按照一定的依据重新分组生成新字段。
如图,表1是原始数据,在表1中添加一个辅助列“分组”就形成了表2.字段“分组”是根据字段“成绩”决定的。学生成绩在0-59区间为“不及格”,在60-75区间为“及格”……分组的依据见表3.把表1变成表2就是数值分组。
2、怎样用python pandas实现数值分组?
下面是在python中实现数值型字段分组的代码,以及对代码的解释。
#导入pandas库
import pandas as pd
#导入EXCEL表数值分组数据
df=pd.read_excel(
'D://python//数值分组.xlsx'
)
#分组依据,注意最小值要减1,最大最要加1.因为pandas的数值分组是左开右闭,或左闭右开
#使用了开区间、闭区间的概念,可百度了解
bins=[-1,60,75,90,101]
#分组对应的标签,-1到60对应不及格,60到75对应及格……
labels=['不及格','及格','良好','优秀']
#使用pandas中的cut进行数值分组,right=False表示左闭右开,省略参数right表示左开右闭
df['等级']=pd.cut(
df['成绩'],
bins,
right=False,
labels=labels)