datanalysis-credit-risk について
信用リスクモデリング向けのデータクリーニングと変数選別を行うスキルです。データ分析担当者を対象に、サンプル処理や特徴量選別を個別の手順で実施し、詳細な Excel レポートを出力します。
主な機能
- 01元データを保持した段階的なクリーニング
- 02モデリング用と OOS サンプルの分離
- 03欠損率、IV、PSI による特徴量選別
- 04Null Importance によるノイズ除去
- 05組織単位のサンプルと特徴量分析
- 06詳細な Excel レポートの出力
活用シーン
- 01信用リスクモデリング用データの準備
- 02組織別・月別のサンプル分布の確認
- 03欠損や不安定性の高い特徴量の除外
- 04各クリーニング手順の結果比較
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ github/ awesome-copilot --skill datanalysis-credit-riskインストール後、Claude Code で/datanalysis-credit-riskを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/analysis.pyfunc.pyscripts/example.py詳細
データクレンジングと変数スクリーニング
クイックスタート
# Run the complete data cleaning pipeline
python ".github/skills/datanalysis-credit-risk/scripts/example.py"
完全な処理手順の説明
データクレンジングパイプラインは以下の 11 ステップで構成されており、各ステップは元データを削除することなく独立して実行されます。
- データの取得 - 生データを読み込み、フォーマットします
- 組織サンプル分析 - 各組織のサンプル数と不良サンプル率を集計します
- OOS データの分離 - モデリングサンプルからアウトオブサンプル(OOS)サンプルを分離します
- 異常月のフィルタリング - 不良サンプル数または総サンプル数が不十分な月を除去します
- 欠損率の計算 - 各特徴量について全体および組織レベルの欠損率を計算します
- 高欠損率特徴量の削除 - 全体の欠損率がしきい値を超える特徴量を除去します
- 低 IV 特徴量の削除 - 全体の IV が低すぎる、または IV が低すぎる組織が多すぎる特徴量を除去します
- 高 PSI 特徴量の削除 - PSI が不安定な特徴量を除去します
- Null Importance によるノイズ除去 - ラベル置換法を用いてノイズ特徴量を除去します
- 高相関特徴量の削除 - 元の gain に基づいて高相関の特徴量を除去します
- レポートの出力 - すべてのステップの詳細と統計を含む 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: gain 差のしきい値(デフォルト 50)
高相関パラメータ
max_corr: 相関しきい値(デフォルト 0.9)top_n_keep: 元の gain ランキングで上位 N 件の特徴量を保持します(デフォルト 20)
出力レポート
生成された Excel レポートには以下のシートが含まれます:
- 汇总 - すべてのステップの概要情報(操作結果と条件を含む)
- 机构样本统计 - 各組織のサンプル数と不良サンプル率
- 分离OOS数据 - OOS サンプルとモデリングサンプルの数
- Step4-异常月份处理 - 削除された異常月
- 缺失率明细 - 各特徴量の全体および組織レベルの欠損率
- Step5-有値率分布统计 - 異なる有値率範囲における特徴量の分布
- Step6-高缺失率处理 - 削除された高欠損率特徴量
- Step7-IV明细 - 各組織および全体における各特徴量の IV 値
- Step7-IV处理 - IV 条件を満たさない特徴量と低 IV 組織
- Step7-IV分布统计 - 異なる IV 範囲における特徴量の分布
- Step8-PSI明细 - 各組織の各月における各特徴量の PSI 値
- Step8-PSI处理 - PSI 条件を満たさない特徴量と不安定な組織
- Step8-PSI分布统计 - 異なる PSI 範囲における特徴量の分布
- Step9-null importance处理 - 削除されたノイズ特徴量
- Step10-高相关性剔除 - 削除された高相関特徴量
機能
- インタラクティブ入力: 各ステップの実行前にパラメータを入力でき、デフォルト値もサポートされています
- 独立実行: 各ステップは独立して実行され、元のデータを削除しないため、比較分析が容易です
- 完全なレポート: 詳細、統計、分布を含む完全な Excel レポートを生成します
- マルチプロセス対応: IV と PSI の計算はマルチプロセスによる高速化をサポートしています
- 組織レベル分析: 組織レベルの統計とモデリング/OOS の区別をサポートしています
コメント
Markdown 対応