SuperModelingFactory 0.6.0__tar.gz → 0.6.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/feature_validation.py +5 -2
  2. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/field_meta.py +1 -0
  3. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/__init__.py +1 -1
  4. {supermodelingfactory-0.6.0/SuperModelingFactory.egg-info → supermodelingfactory-0.6.1}/PKG-INFO +2 -2
  5. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/README.md +1 -1
  6. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1/SuperModelingFactory.egg-info}/PKG-INFO +2 -2
  7. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/pyproject.toml +1 -1
  8. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/setup.py +1 -1
  9. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/ExcelMaster/ExcelFormatTool.py +0 -0
  10. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/ExcelMaster/ExcelMaster.py +0 -0
  11. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/ExcelMaster/Template.py +0 -0
  12. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/ExcelMaster/Utility.py +0 -0
  13. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/ExcelMaster/__init__.py +0 -0
  14. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/LICENSE +0 -0
  15. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/MANIFEST.in +0 -0
  16. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/Binning_Tool.py +0 -0
  17. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/Binning_Tool.pyi +0 -0
  18. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/Check_DuckDB_Compatibility.py +0 -0
  19. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/Json_Data_Converter.py +0 -0
  20. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/Model_Registry_Tool.py +0 -0
  21. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/ODPS_Tool.py +0 -0
  22. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/Parallel_Engine.py +0 -0
  23. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/Parallel_ODPS_Manager.py +0 -0
  24. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/Proc_Compare.py +0 -0
  25. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/Slope_Tool.py +0 -0
  26. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/Slope_Tool.pyi +0 -0
  27. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/XOR_Encryptor.py +0 -0
  28. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/XOR_Encryptor.pyi +0 -0
  29. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/__init__.py +0 -0
  30. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/kDataFrame.py +0 -0
  31. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/kDataFrame.pyi +0 -0
  32. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/sample_weight_utils.py +0 -0
  33. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Core/utils.py +0 -0
  34. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Eval/Evaluation_Tool.py +0 -0
  35. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Eval/Evaluation_Tool.pyi +0 -0
  36. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Eval/Model_Eval_Tool.py +0 -0
  37. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Eval/Model_Eval_Tool.pyi +0 -0
  38. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Eval/__init__.py +0 -0
  39. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Eval/evaluate_model.py +0 -0
  40. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Eval/evaluate_model.pyi +0 -0
  41. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Eval/weighted_eval_utils.py +0 -0
  42. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Explainability/Coalition_Structure.py +0 -0
  43. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Explainability/Model_Explainer.py +0 -0
  44. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Explainability/__init__.py +0 -0
  45. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Feature/Distribution_Tool.py +0 -0
  46. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Feature/Distribution_Tool.pyi +0 -0
  47. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Feature/Feature_Insights.py +0 -0
  48. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Feature/Feature_Insights.pyi +0 -0
  49. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Feature/Feature_Screen.py +0 -0
  50. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Feature/PSI_Tool.py +0 -0
  51. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Feature/PSI_Tool.pyi +0 -0
  52. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Feature/WOE_Engine_Feature_Patch.py +0 -0
  53. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Feature/Weighted_Screen.py +0 -0
  54. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Feature/__init__.py +0 -0
  55. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Model/Backward_Tool.py +0 -0
  56. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Model/Backward_Tool.pyi +0 -0
  57. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Model/GBM_Search_Tool.py +0 -0
  58. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Model/GBM_Tool.py +0 -0
  59. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Model/GBM_Tool.pyi +0 -0
  60. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Model/LRM_Tool.py +0 -0
  61. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Model/LRM_Tool.pyi +0 -0
  62. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Model/__init__.py +0 -0
  63. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/__init__.py +0 -0
  64. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/_common.py +0 -0
  65. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/credit_model.py +0 -0
  66. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/mock_sample.py +0 -0
  67. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/orchestrator.py +0 -0
  68. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/reject_inference.py +0 -0
  69. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/sample_analysis.py +0 -0
  70. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/score_comparison.py +0 -0
  71. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/score_consistency_uat.py +0 -0
  72. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Pipeline/screening_artifact.py +0 -0
  73. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Sample/Distribution_Adaptation.py +0 -0
  74. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Sample/Distribution_Adaptation.pyi +0 -0
  75. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Sample/Reject_Infer.py +0 -0
  76. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Sample/Reject_Infer.pyi +0 -0
  77. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Sample/Sample_Split.py +0 -0
  78. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Sample/Sample_Split.pyi +0 -0
  79. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/Sample/__init__.py +0 -0
  80. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/UAT/UAT_Consistency_Checker.py +0 -0
  81. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/UAT/__init__.py +0 -0
  82. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Adapter.py +0 -0
  83. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Adapter.pyi +0 -0
  84. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Master.py +0 -0
  85. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Master.pyi +0 -0
  86. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Monotone_Binner.py +0 -0
  87. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Monotone_Binner.pyi +0 -0
  88. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Plot_Tool.py +0 -0
  89. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Plot_Tool.pyi +0 -0
  90. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Report_Builder.py +0 -0
  91. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Report_Builder.pyi +0 -0
  92. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Tool.py +0 -0
  93. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/WOE_Tool.pyi +0 -0
  94. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/__init__.py +0 -0
  95. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/plot_woe_tool.py +0 -0
  96. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/WOE/plot_woe_tool.pyi +0 -0
  97. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/_utils/__init__.py +0 -0
  98. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/_utils/nan_guard.py +0 -0
  99. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/_utils/robust.py +0 -0
  100. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/_utils/sentinels.py +0 -0
  101. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/ref_font/KaiTi.ttf +0 -0
  102. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/ref_font/WeiRuanYaHei.ttf +0 -0
  103. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/ref_font/__init__.py +0 -0
  104. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Modeling_Tool/ref_font/simsun.ttc +0 -0
  105. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Report/Report_Tool.py +0 -0
  106. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/Report/__init__.py +0 -0
  107. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/SuperModelingFactory.egg-info/SOURCES.txt +0 -0
  108. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/SuperModelingFactory.egg-info/dependency_links.txt +0 -0
  109. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/SuperModelingFactory.egg-info/not-zip-safe +0 -0
  110. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/SuperModelingFactory.egg-info/requires.txt +0 -0
  111. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/SuperModelingFactory.egg-info/top_level.txt +0 -0
  112. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/requirements.txt +0 -0
  113. {supermodelingfactory-0.6.0 → supermodelingfactory-0.6.1}/setup.cfg +0 -0
@@ -112,6 +112,7 @@ class FeatureValidationPipelineConfig:
112
112
 
113
113
  write_outputs: bool = True
114
114
  write_excel: bool = True
115
+ plot_outputs: bool = True
115
116
 
116
117
 
117
118
  @dataclass
@@ -191,7 +192,9 @@ class FeatureValidationPipeline:
191
192
 
192
193
  output_dir = Path(cfg.output_dir)
193
194
  if cfg.write_outputs or cfg.write_excel:
194
- make_dirs(output_dir, output_dir / "figs" / "woe")
195
+ make_dirs(output_dir)
196
+ if cfg.write_outputs and cfg.plot_outputs:
197
+ make_dirs(output_dir / "figs" / "woe")
195
198
 
196
199
  splits = self._split_data(work, target_cols[0] if target_cols else None)
197
200
  combined = self._combine_splits(splits)
@@ -1228,7 +1231,7 @@ class FeatureValidationPipeline:
1228
1231
 
1229
1232
  def _plot_woe(self, engine: Any, adapter: Any, train: pd.DataFrame, features: list[str], target: str) -> None:
1230
1233
  cfg = self.config
1231
- if not cfg.write_outputs:
1234
+ if not (cfg.write_outputs and cfg.plot_outputs):
1232
1235
  return
1233
1236
  base_dir = Path(cfg.output_dir) / "figs" / "woe" / target
1234
1237
  make_dirs(base_dir)
@@ -321,6 +321,7 @@ _FIELD_DESCRIPTIONS = {
321
321
  "weight_col": "样本权重列名。None 表示等权。",
322
322
  "write_outputs": "是否落地 CSV、图表、模型路径等文件。",
323
323
  "write_excel": "是否生成 ExcelMaster/Excel 报告。",
324
+ "plot_outputs": "是否生成 Pipeline 自动分析图;仍受 write_outputs 总开关控制,不影响 CSV 或 Excel 输出。",
324
325
  "write_ri_datasets": "是否写出各 RI 方法的增强样本集,宽表场景可能很大。",
325
326
  "screening_artifact": "FeatureValidationPipeline 产出的 Python artifact 对象,不适合 GUI/YAML 直接编辑。",
326
327
  "feature_validation_result": "FeatureValidationPipelineResult 对象,不适合 GUI/YAML 直接编辑。",
@@ -1,7 +1,7 @@
1
1
  # encoding: utf-8
2
2
 
3
3
  __author__ = "Jingkai Sun"
4
- __version__ = "0.6.0"
4
+ __version__ = "0.6.1"
5
5
 
6
6
  from ._utils import SMF_MISSING_BIN
7
7
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: SuperModelingFactory
3
- Version: 0.6.0
3
+ Version: 0.6.1
4
4
  Summary: Credit risk modeling factory: WOE binning, scorecards, LightGBM, Excel reporting.
5
5
  Home-page: https://github.com/Kyle-J-Sun/SuperModelingFactory
6
6
  Author: Kyle Sun
@@ -265,7 +265,7 @@ em.close_workbook()
265
265
 
266
266
  ## 版本
267
267
 
268
- - **Version**: 0.6.0
268
+ - **Version**: 0.6.1
269
269
  - **Author**: Jingkai Sun
270
270
 
271
271
  ## 许可证
@@ -208,7 +208,7 @@ em.close_workbook()
208
208
 
209
209
  ## 版本
210
210
 
211
- - **Version**: 0.6.0
211
+ - **Version**: 0.6.1
212
212
  - **Author**: Jingkai Sun
213
213
 
214
214
  ## 许可证
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: SuperModelingFactory
3
- Version: 0.6.0
3
+ Version: 0.6.1
4
4
  Summary: Credit risk modeling factory: WOE binning, scorecards, LightGBM, Excel reporting.
5
5
  Home-page: https://github.com/Kyle-J-Sun/SuperModelingFactory
6
6
  Author: Kyle Sun
@@ -265,7 +265,7 @@ em.close_workbook()
265
265
 
266
266
  ## 版本
267
267
 
268
- - **Version**: 0.6.0
268
+ - **Version**: 0.6.1
269
269
  - **Author**: Jingkai Sun
270
270
 
271
271
  ## 许可证
@@ -12,7 +12,7 @@ build-backend = "setuptools.build_meta"
12
12
 
13
13
  [project]
14
14
  name = "SuperModelingFactory"
15
- version = "0.6.0"
15
+ version = "0.6.1"
16
16
  description = "Credit risk modeling factory: WOE binning, scorecards, LightGBM, Excel reporting."
17
17
  readme = "README.md"
18
18
  requires-python = ">=3.10"
@@ -15,7 +15,7 @@ def _read(path: str) -> str:
15
15
 
16
16
  setup(
17
17
  name="SuperModelingFactory",
18
- version=os.environ.get("SMF_VERSION", "0.6.0"),
18
+ version=os.environ.get("SMF_VERSION", "0.6.1"),
19
19
  description="Credit risk modeling factory: WOE binning, scorecards, LightGBM, Excel reporting.",
20
20
  long_description=_read("README.md"),
21
21
  long_description_content_type="text/markdown",