老饼讲解:一步一步上手学习
bins.merge.eSample用于将样本进行等样分箱,返回分箱的结果
完整调用格式如下:
bin_set = bins.merge.eSample(x,bin_sample=100)x :需要进行分箱的变量
数据类型:单列pandas.core.series或numpy.array
bin_sample:每箱的样本数
数据类型:正整数
bin_set:等样分箱的结果
备注:由于样本的x可能会相同,故等样本分箱未必能每箱都是bin_sample个样本,例如[0,0,0,0,1,1],目标是希望每箱2个样本,但由于0有4个样本,它们必会划到同一箱,所以该箱就不只有2个样本。
eSample使用示例如下:
import bbbrisk as br
# 加载数据
data = br.datasets.load_bloan() # 加载数据
x,y = data['rev'],data['is_bad'] # 变量与标签
# 等样本分箱
bin_set = br.bins.merge.eSample(x,bin_sample=2000) # 将变量进行等样本分箱
bin_stat = br.bins.Bins(bin_set).binStat(x,y) # 统计分箱结果
# 显示结果
br.display.pd.set(width=300,max_colwidth=30,max_rows=30) # 美化pandas的显示方式
print('\n分箱结果:\nbin_set = ',bin_set) # 显示分箱结果
print('\n样本在分箱的分布:\n',bin_stat) # 显示样本分布运行结果如下:

好了,以上就是bins.merge.eSample函数的使用方法了~
评论