datanalysis-credit-risk

datanalysis-credit-risk

熱門

信用風險資料清理與變數篩選流程,適用於貸前建模。當處理原始信用資料,需要進行品質評估、缺失值分析或建模前的變數篩選時使用。涵蓋資料載入與格式化、異常期間過濾、缺失率計算、高缺失變數移除、低IV變數篩選、高PSI變數移除、Null Importance去噪、高相關變數移除,以及清理報告生成。適用場景為信用風險資料清理、變數篩選、貸前建模預處理。

3.7萬星標
4572分支
更新於 2026/7/14
SKILL.md
readonlyread-only
name
datanalysis-credit-risk
description

信用風險資料清理與變數篩選流程,適用於貸前建模。當處理原始信用資料,需要進行品質評估、缺失值分析或建模前的變數篩選時使用。涵蓋資料載入與格式化、異常期間過濾、缺失率計算、高缺失變數移除、低IV變數篩選、高PSI變數移除、Null Importance去噪、高相關變數移除,以及清理報告生成。適用場景為信用風險資料清理、變數篩選、貸前建模預處理。

資料清理與變數篩選

快速開始

# 執行完整資料清理流程
python ".github/skills/datanalysis-credit-risk/scripts/example.py"

完整流程說明

資料清理流程包含以下11個步驟,每個步驟獨立執行,不刪除原始資料:

  1. 取得資料 - 載入並格式化原始資料
  2. 機構樣本分析 - 統計各機構的樣本數與壞樣本率
  3. 分離OOS資料 - 從建模樣本中分離出樣本外(OOS)樣本
  4. 過濾異常月份 - 移除壞樣本數或總樣本數不足的月份
  5. 計算缺失率 - 計算每個特徵的整體與各機構缺失率
  6. 移除高缺失率特徵 - 移除整體缺失率超過閾值的特徵
  7. 移除低IV特徵 - 移除整體IV過低或在過多機構中IV過低的特徵
  8. 移除高PSI特徵 - 移除PSI不穩定的特徵
  9. Null Importance去噪 - 使用標籤置換法移除雜訊特徵
  10. 移除高相關特徵 - 根據原始增益移除高相關特徵
  11. 匯出報告 - 生成包含所有步驟細節與統計的Excel報告

核心函數

函數 用途 模組
get_dataset() 載入並格式化資料 references.func
org_analysis() 機構樣本分析 references.func
missing_check() 計算缺失率 references.func
drop_abnormal_ym() 過濾異常月份 references.analysis
drop_highmiss_features() 移除高缺失率特徵 references.analysis
drop_lowiv_features() 移除低IV特徵 references.analysis
drop_highpsi_features() 移除高PSI特徵 references.analysis
drop_highnoise_features() Null Importance去噪 references.analysis
drop_highcorr_features() 移除高相關特徵 references.analysis
iv_distribution_by_org() IV分佈統計 references.analysis
psi_distribution_by_org() PSI分佈統計 references.analysis
value_ratio_distribution_by_org() 有值率分佈統計 references.analysis
export_cleaning_report() 匯出清理報告 references.analysis

參數說明

資料載入參數

  • DATA_PATH:資料檔案路徑(建議使用parquet格式)
  • DATE_COL:日期欄位名稱
  • Y_COL:標籤欄位名稱
  • ORG_COL:機構欄位名稱
  • KEY_COLS:主鍵欄位名稱列表

OOS機構設定

  • OOS_ORGS:樣本外機構列表

異常月份過濾參數

  • min_ym_bad_sample:每月最少壞樣本數(預設10)
  • min_ym_sample:每月最少總樣本數(預設500)

缺失率參數

  • missing_ratio:整體缺失率閾值(預設0.6)

IV參數

  • overall_iv_threshold:整體IV閾值(預設0.1)
  • org_iv_threshold:單一機構IV閾值(預設0.1)
  • max_org_threshold:最多可容忍低IV機構數(預設2)

PSI參數

  • psi_threshold:PSI閾值(預設0.1)
  • max_months_ratio:最大不穩定月份比例(預設1/3)
  • max_orgs:最大不穩定機構數(預設6)

Null Importance參數

  • n_estimators:樹木數量(預設100)
  • max_depth:樹木最大深度(預設5)
  • gain_threshold:增益差異閾值(預設50)

高相關參數

  • max_corr:相關性閾值(預設0.9)
  • top_n_keep:依原始增益排名保留前N個特徵(預設20)

輸出報告

生成的Excel報告包含以下工作表:

  1. 汇总 - 所有步驟的摘要資訊,包含操作結果與條件
  2. 机构样本统计 - 各機構的樣本數與壞樣本率
  3. 分离OOS数据 - OOS樣本與建模樣本數量
  4. Step4-异常月份处理 - 被移除的異常月份
  5. 缺失率明细 - 每個特徵的整體與各機構缺失率
  6. Step5-有值率分布统计 - 特徵在不同有值率區間的分佈
  7. Step6-高缺失率处理 - 被移除的高缺失率特徵
  8. Step7-IV明细 - 每個特徵在各機構與整體的IV值
  9. Step7-IV处理 - 不符合IV條件的特徵與低IV機構
  10. Step7-IV分布统计 - 特徵在不同IV區間的分佈
  11. Step8-PSI明细 - 每個特徵在各機構各月份的PSI值
  12. Step8-PSI处理 - 不符合PSI條件的特徵與不穩定機構
  13. Step8-PSI分布统计 - 特徵在不同PSI區間的分佈
  14. Step9-null importance处理 - 被移除的雜訊特徵
  15. Step10-高相关性剔除 - 被移除的高相關特徵

特色

  • 互動式輸入:每個步驟執行前可輸入參數,支援預設值
  • 獨立執行:每個步驟獨立執行,不刪除原始資料,便於對比分析
  • 完整報告:生成完整的Excel報告,包含細節、統計與分佈
  • 多進程支援:IV與PSI計算支援多進程加速
  • 機構層級分析:支援機構層級統計與建模/OOS區分