Explorar o código

modify: 修改woe计算代码

wangzhaoyang hai 5 meses
pai
achega
51649e7b72
Modificáronse 1 ficheiros con 4 adicións e 4 borrados
  1. 4 4
      feature/feature_utils.py

+ 4 - 4
feature/feature_utils.py

@@ -30,12 +30,12 @@ def f_get_bins(data: DataSplitEntity, feat: str, strategy: str='quantile', nbins
     # 可使用c.export()[feature]查看某一特征的分箱临界值
     return c
     '''
-def f_get_woe(train_selected: DataSplitEntity, test_selected: DataSplitEntity, oot_selected: DataSplitEntity, c: td.transform.Combiner) -> pd.DataFrame:
+def f_get_woe(data: DataSplitEntity, c: td.transform.Combiner, to_drop:list) -> 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))
+    train_woe = transer.fit_transform(c.transform(data.train_data()), data.train_data()['target'],exclude=to_drop+['target'])
+    test_woe = transer.transform(c.transfrom(data.test_data()))
+    oot_woe = transer.transform(c.transform(data.val_data()))
     return train_woe, test_woe, oot_woe
 
 def f_get_iv(data: DataSplitEntity) -> pd.DataFrame: