Python之woe:woe库的简介、安装、使用方法之详细攻略

Python之woe:woe库的简介、安装、使用方法之详细攻略


woe库的简介

woe转换工具主要用于信用评级的记分卡模型。在woe中,对变量进行分箱的原理类似于二叉决策树,其中决定如何划分的目标函数是iv值。特点如下:

  • 基于IV准则的分裂树
  • 丰富的模型评价方法
  • 格式统一,输出方便
  • IV树的储存以备后续使用

官网:https://github.com/boredbird/woe

1、离散值分箱原理

将每个值作为一个分组,计算个分组woe值,再计算IV值。

2、连续值分箱原理

  • 计算将整体数据作为一个分组的IV值(命名为IV0);
  • 对所有值排序,根据最大,最小值平均划分100个取值区间(99个区间分割点,每个分割点可以将整体数据分割为左右两部分);
  • 针对每个分割点,尝试将左右两部分作为两个分组,计算IV值(如果此种分组中,左右有一个分组中数据少于总体数据量的5%,不计算此分组IV)。获取99中分组方式中的最大IV值(IVmax);
  • 假如此最大IV值(IVmax)大于不分组IV值的101%(IV0),不进行分割。否则,以此分割点将数据整体分为左右两个组。每个组独立重新进行1步骤,进入下一轮循环。
  • 根据记录所有分组点进行数据整体分组,计算IV。

woe库函数的安装

pip install woe

woe库函数的使用方法

1、woe模块功能树

|- __init__
|- config.py
|   |-- config
|       |-- __init__
|               |-- change_config_var_dtype()
|               |-- load_file()
|- eval.py
|   |-- compute_ks()
|   |-- eval_data_summary()
|   |-- eval_feature_detail()
|   |-- eval_feature_stability()
|   |-- eval_feature_summary()
|   |-- eval_model_stability()
|   |-- eval_model_summary()
|   |-- eval_segment_metrics()
|   |-- plot_ks()
|   |-- proc_cor_eval()
|   |-- proc_validation()
|   |-- wald_test()
|- feature_process.py
|   |-- binning_data_split()
|   |-- calculate_iv_split()
|   |-- calulate_iv()
|   |-- change_feature_dtype()
|   |-- check_point()
|   |-- fillna()
|   |-- format_iv_split()
|   |-- proc_woe_continuous()
|   |-- proc_woe_discrete()
|   |-- process_train_woe()
|   |-- process_woe_trans()
|   |-- search()
|   |-- woe_trans()
|- ftrl.py
|   |-- FTRL()
|   |-- LR()
|- GridSearch.py
|   |-- fit_single_lr()
|   |-- grid_search_lr_c()
|   |-- grid_search_lr_c_main()
|   |-- grid_search_lr_validation()
(0)

相关推荐