等频分箱

 

把变量值按照从小到大的顺序排列,根据数据集样本个数等分为k 部分,每部分当作一个分箱,比如分箱数是 10,则每个箱内包含大约 10% 的样本量。

Fare变量等频分箱


A
1 =file("D://titanic.csv").import@qtc()
2 =A1.ranks(Fare)
3 3
4 =ceil(A1.len()/A3)
5 =A3.(~*A4)
6 =A1.derive(if(A2(#)<A5(1),"low",if(A2(#)>=A5(2),"hign","middle")):Fare_equifre_binning)

A2 将 Fare 排序,返回排序后的位置

A3 设置分箱数

A4 计算每组的频数

A5 计算每个箱子的频数边界

A6 按照 Fare 排序后的位置进行分箱