# -*- coding: utf-8 -*- """ @author: yq @time: 2024/11/1 @desc: """ import time from entitys import DataSplitEntity, DataProcessConfigEntity from feature import FilterStrategyFactory from feature.strategy_iv import StrategyIv if __name__ == "__main__": time_now = time.time() import scorecardpy as sc dat = sc.germancredit() dat["creditability"] = dat["creditability"].apply(lambda x: 1 if x == "bad" else 0) data = DataSplitEntity(dat[:700], None, dat[700:]) filter_strategy_factory= FilterStrategyFactory(DataProcessConfigEntity.from_config('./config/data_process_config_template.json')) strategy = filter_strategy_factory.get_strategy() candidate_feature = strategy.filter(data) candidate_feature = strategy.feature_generate(data, candidate_feature) print(time.time() - time_now)