Prechádzať zdrojové kódy

add: 添加toad的WOE转换代码

wangzhaoyang 5 mesiacov pred
rodič
commit
33f5978cd5
1 zmenil súbory, kde vykonal 7 pridanie a 3 odobranie
  1. 7 3
      feature/feature_utils.py

+ 7 - 3
feature/feature_utils.py

@@ -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