|
@@ -30,9 +30,13 @@ def f_get_bins(data: DataSplitEntity, feat: str, strategy: str='quantile', nbins
|
|
|
# 可使用c.export()[feature]查看某一特征的分箱临界值
|
|
|
return c
|
|
|
'''
|
|
|
-def f_get_woe(data: DataSplitEntity) -> pd.DataFrame:
|
|
|
- pass
|
|
|
-
|
|
|
+def f_get_woe(train_selected: DataSplitEntity, test_selected: DataSplitEntity, oot_selected: DataSplitEntity, c: td.transform.Combiner) -> pd.DataFrame:
|
|
|
+ transer = td.transform.WOETransformer()
|
|
|
+ # 根据训练数据来训练woe转换器,并选择目标变量和排除变量
|
|
|
+ train_woe = transer.fit_transform(c.transform(train_selected), train_selected['target'],exclude=to_drop+['target'])
|
|
|
+ test_woe = transer.transform(c.transfrom(test_selected))
|
|
|
+ oot_woe = transer.transform(c.transform(oot_selected))
|
|
|
+ return train_woe, test_woe, oot_woe
|
|
|
|
|
|
def f_get_iv(data: DataSplitEntity) -> pd.DataFrame:
|
|
|
pass
|