Py之scorecardpy:scorecardpy的简介、安装、使用方法之详细攻略

简介: Py之scorecardpy:scorecardpy的简介、安装、使用方法之详细攻略


目录

scorecardpy的简介

scorecardpy的安装

scorecardpy的使用方法

1、基础案例


scorecardpy的简介

      Scorecardpy,由谢士晨博士开发,这个包是 R 包评分卡的 python 版本。 其目标是通过为一些常见任务提供功能,使传统信用风险评分卡模型的开发更容易、更高效

  • 数据切分(split_df)
  • 变量选择(iv,var_filter)
  • 证据权重 (woe) 分箱(woebin、woebin_plot、woebin_adj、woebin_ply)
  • 评分卡缩放 (scorecard, scorecard_ply)
  • 性能评估(perf_eva、perf_psi)

Githubhttps://github.com/shichenxie/scorecardpy

案例

scorecardpy库的使用简介 - 知乎

评分卡建模工具scorecardpy全解读 - 知乎

scorecardpy的安装

pip install scorecardpy

 

scorecardpy的使用方法

1、基础案例

1. # Traditional Credit Scoring Using Logistic Regression
2. import scorecardpy as sc
3. 
4. # data prepare ------
5. # load germancredit data
6. dat = sc.germancredit()
7. 
8. # filter variable via missing rate, iv, identical value rate
9. dt_s = sc.var_filter(dat, y="creditability")
10. 
11. # breaking dt into train and test
12. train, test = sc.split_df(dt_s, 'creditability').values()
13. 
14. # woe binning ------
15. bins = sc.woebin(dt_s, y="creditability")
16. # sc.woebin_plot(bins)
17. 
18. # binning adjustment
19. # # adjust breaks interactively
20. # breaks_adj = sc.woebin_adj(dt_s, "creditability", bins) 
21. # # or specify breaks manually
22. breaks_adj = {
23. 'age.in.years': [26, 35, 40],
24. 'other.debtors.or.guarantors': ["none", "co-applicant%,%guarantor"]
25. }
26. bins_adj = sc.woebin(dt_s, y="creditability", breaks_list=breaks_adj)
27. 
28. # converting train and test into woe values
29. train_woe = sc.woebin_ply(train, bins_adj)
30. test_woe = sc.woebin_ply(test, bins_adj)
31. 
32. y_train = train_woe.loc[:,'creditability']
33. X_train = train_woe.loc[:,train_woe.columns != 'creditability']
34. y_test = test_woe.loc[:,'creditability']
35. X_test = test_woe.loc[:,train_woe.columns != 'creditability']
36. 
37. # logistic regression ------
38. from sklearn.linear_model import LogisticRegression
39. lr = LogisticRegression(penalty='l1', C=0.9, solver='saga', n_jobs=-1)
40. lr.fit(X_train, y_train)
41. # lr.coef_
42. # lr.intercept_
43. 
44. # predicted proability
45. train_pred = lr.predict_proba(X_train)[:,1]
46. test_pred = lr.predict_proba(X_test)[:,1]
47. 
48. # performance ks & roc ------
49. train_perf = sc.perf_eva(y_train, train_pred, title = "train")
50. test_perf = sc.perf_eva(y_test, test_pred, title = "test")
51. 
52. # score ------
53. card = sc.scorecard(bins_adj, lr, X_train.columns)
54. # credit score
55. train_score = sc.scorecard_ply(train, card, print_step=0)
56. test_score = sc.scorecard_ply(test, card, print_step=0)
57. 
58. # psi
59. sc.perf_psi(
60.   score = {'train':train_score, 'test':test_score},
61.   label = {'train':y_train, 'test':y_test}
62. )


相关文章
|
机器学习/深度学习 数据采集 测试技术
Toad:基于 Python 的标准化评分卡模型(上)
在信贷的风控模型中最常用、最经典的可能要属评分卡了,所谓评分卡就是给信贷客户进行打分,按照不同业务场景可为贷前、贷中、贷后和反欺诈,一般叫做ABCF卡。模型得到分数,通过设置cutoff阈值给出评估结果,结果可直接用于通过或拒绝,或者用于策略应用。
2864 0
Toad:基于 Python 的标准化评分卡模型(上)
|
机器学习/深度学习 存储
卡方分箱、KS分箱、最优IV分箱、树结构分箱、自定义分箱
卡方分箱、KS分箱、最优IV分箱、树结构分箱、自定义分箱
3983 0
卡方分箱、KS分箱、最优IV分箱、树结构分箱、自定义分箱
|
人工智能 C++
ML之FE:Vintage曲线/Vintage分析的简介、计算逻辑、案例应用之详细攻略
ML之FE:Vintage曲线/Vintage分析的简介、计算逻辑、案例应用之详细攻略
ML之FE:Vintage曲线/Vintage分析的简介、计算逻辑、案例应用之详细攻略
|
数据中心 Anolis
性能优化特性之:LSE指令集编译优化
本文介绍了倚天实例上的编译优化特性:LSE,并从优化原理、使用方法进行了详细阐述。
|
机器学习/深度学习 图计算 图形学
同构图、异构图、属性图、非显式图
同构图(Homogeneous Graph)、异构图(Heterogeneous Graph)、属性图(Property Graph)和非显式图(Graph Constructed from Non-relational Data)。 (1)同构图:
4331 0
同构图、异构图、属性图、非显式图
|
8月前
|
SQL XML 自然语言处理
Text2SQL 破局技术解析之一:规范文本与灵活性
润乾NLQ创新采用“规范文本”作为中间层,将自然语言转SQL分为三阶段:LLM生成可读的规范文本,用户确认意图后,通过规则引擎转为MQL再生成准确SQL。该方案兼顾灵活性、准确性与复杂查询支持,大幅降低企业实施成本,为人机协同的Text2SQL提供了可行的工程化路径。
|
存储 数据挖掘 数据处理
掌握Pandas核心数据结构:Series与DataFrame的四种创建方式
本文介绍了 Pandas 库中核心数据结构 Series 和 DataFrame 的四种创建方法,包括从列表、字典、标量和 NumPy 数组创建 Series,以及从字典、列表的列表、NumPy 数组和 Series 字典创建 DataFrame,通过示例详细说明了每种创建方式的具体应用。
1334 67
|
监控 Java 应用服务中间件
SpringBoot3 快速入门及原理分析
SpringBoot3 快速入门及原理分析
|
数据挖掘 索引 Python
Pandas数据读取:CSV文件
Pandas 是 Python 中强大的数据分析库,`read_csv` 函数用于从 CSV 文件中读取数据。本文介绍 `read_csv` 的基本用法、常见问题及其解决方案,并通过代码案例详细说明。涵盖导入库、读取文件、指定列名和分隔符、处理文件路径错误、编码问题、大文件读取、数据类型问题、日期时间解析、空值处理、跳过行、指定索引列等。高级用法包括自定义列名映射、处理多行标题和注释行。希望本文能帮助你更高效地使用 Pandas 进行数据读取和处理。
1980 13
|
机器学习/深度学习 算法 数据安全/隐私保护
两万多字诠释python经典基础算法之100题【内含思路、程序和答案】【python小白必备】
本文为最最基础的python基础算法题目、思路和答案,适合python初学者使用,可以当作python入门算法工具书,虽然不具有高深的算法,但是都是企业级算法用的频率最多的,这也是学好高级算法的必经之路。希望收藏、关注、点赞哦。

热门文章

最新文章