- 博客(12)
- 收藏
- 关注
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第二周-6(7月9日
#划分测试集训练集查看MonthlyIncome_rf的分布情况,没有作标准化与归一化,选择一定范围内的值进行查看用df.copy(deep=True)创建一个不同内存空间的副本#查看相关字段直方图df2=df.copy(deep=True)df2 = df2[df2['MonthlyIncome_rf'] < 60000]df2.hist('MonthlyIncome_rf',figsize=(12,12),bins=80)plt.title("MonthlyInco.
2021-07-28 17:55:07
121
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第二周-5(7月8日)
删除重复行# 查看重复值isDuplicated = df.duplicated( ['MonthlyIncome_rf', 'age', 'DebtRatio', 'SeriousDlqin2yrs', 'RevolvingUtilizationOfUnsecuredLines' , 'NumberOfTime30-59DaysPastDueNotWorse' , 'NumberOfOpenCreditLinesAndLoans', 'NumberOfT..
2021-07-28 17:46:36
187
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第二周-4( 7月5日 )
数据预处理部分首先对NumberOfDependents字段中缺失的数据进行处理查看数据集信息可知:NumberOfDependents字段中缺失行少于5000,数量较少,于是选择直接对缺失行进行删除处理。# 删除NumberOfDependents缺失行# SeriousDlqin2yrs字段中好客户为0,违约客户为1df = pd.read_csv('data/ScorecardsData.csv')#df.info #获得数据集信息df = df.dropna(sub
2021-07-28 17:40:51
91
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第四周-12(7月23日)
在得出基础分和各部分得分后,两者相加即可得出个人总评分,自定义compute_score函数来找到每一行数据根据分箱得出的分数段的得分,最想通过各评分相加得出最终评分,并对最终结果进行输出。compute_score函数def compute_score(series, bins, score): list = [] i = 0 while i < len(series): value = series[i] j = len(bi.
2021-07-28 17:25:43
150
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第四周-11(7月21日)
模型建立后开始计算分数,先找到前面由逻辑回归输出结果里面的逻辑回归系数。然后计算评分卡分值,由查阅资料得知score=offset+factor*log(odds),这里设置基础分值为500,PDO和odds为20。计算得出评分卡基础分值后再获取各部分变量的评分,并得出评分卡。计算变量分数通过get_score函数获取。计算比例因子factor,偏移量以及评分卡分值p = 20 / math.log(2)q = 500 - 20 * math.log(20) / math.log(2)base
2021-07-28 17:18:46
97
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第四周-10(7月19日)
得出woe值和IV值后,通过柱状图对数据进行可视化输出。再自定义函数replace_woe,读取训练集,并将得到的woe值进行替换输出到新的文件WoeData里面。去除掉对因变量影响不明显的变量'SeriousDlqin2yrs', 'DebtRatio', 'MonthlyIncome_rf', 'NumberOfOpenCreditLinesAndLoans', 'NumberRealEstateLoansOrLines', 'NumberOfDependents'后通过对数据进行statsmode..
2021-07-28 16:53:13
142
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第三周-9(7月16日)
日总结进行完分箱的工作后,我们开始进行WOE值和IV值的计算以为后面模型转变做好准备,在通过了解和学习相关知识后,我们通过创建函数bin_self,在里面算出好坏样本数,然后再将分箱结果引入,通过公式计算每个箱体的WOE值、IV值,并对箱体进行排序。同时创建mono_bin函数对部分数据列进行自动分箱。最后返回排序后的分箱结果和WOE值,IV值。再创建各个列的对象,和手动分bins边界,并通过调用函数实现计算。为后面转换logistic回归模型转变为标准评分卡格式做好准备。例如age的分箱
2021-07-27 09:47:25
157
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第三周-8(7月14日)
日总结在进行了探索性数据分析后,我们开始了数据分箱,最先采用kmeans对数据进行分箱,但如上次探索性数据分析的时候,由于个别数据与平均数差距过大。导致分箱出现严重的不均匀,第一个有近10w条数据,但最后一个只有几条数据,为了数据分布尽量均匀,我们采用了手动划分bins的边界,将超过一定阈值的数统一分箱到一个箱里面,这样就不会造成箱的冗余和数据不均,这样分箱后,再方便对数据进行WOE值的计算。例如# RevolvingUtilizationOfUnsecuredLines分箱Revolvin
2021-07-16 22:04:03
106
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第三周-7(7月12日)
日总结通过上周对基础知识的学习已经数据预处理后,本周先就已经处理好的数据进行探索性数据分析,通过直方图对各个数据列进行适当的划分bins数后。观察分析直方图,发现其中大多数都按照预期呈现正态分布,但部分列例如DebtRatio列就出现了数据只占据直方图左边的情况,最先以为是bins数不够所导致的问题,但划分更多bins数后仍然出现这种问题,后对数据库的数据进行排序查看发现该列超过90%的数据都是1左右的小位数,后面出现了几千上万甚至上十万的数据,又因为这些数据量小,所以在直方图上几乎不可见,导致虽然..
2021-07-16 21:52:57
127
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第一周-3(7月2日)
继续学习了对于数据预处理和数据建模评估的内容标准化和归一化处理标准化使用库函数进行标准化处理、自定义函数实现标准化处理归一化使用库函数进行归一化处理、自定义函数实现归一化处理训练集和测试集的处理数据集按一定比例拆分成训练集和测试集查看标准化与归一化的差异正态分布数据的处理效果、偏态分布的处理结果拆分数据集使用train_test_split按8:2拆分训练集和测试集使用自定义的方式按8:2拆分训练集和测试集划分K折交叉验证数据集使用KFold获取5折.
2021-07-14 17:45:26
138
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第一周-2(6月30日)
正式开始学习数据分析处理的基本内容数组创建数组创建一维数组并指定元素数据类型、list与array的转换、二维数组创建、创建不设置初始值的矩阵、创建对角矩阵、创建全0矩阵、创建全1矩阵、使用区域分割方法产生序列、数组的引用和拷贝数组维度数组的维度和长度、访问数组中的元素、变更数组的维度数组元素筛选通过下标索引返回多个元素、从二维数组中返回指定行和列索引的数据、返回非0元素、根据元素值大小进行过滤、检查数组及其子集合的数据内存是否共享、通过指定一个True/False数组,返回所有
2021-07-14 17:12:47
96
原创 山东大学暑期项目实训-基于信用评分卡算法模型的个人信用评级系统的设计与实现-第一周-1(6月28日)
实训题目名称基于信用评分卡算法模型的个人信用评级系统的设计与实现项目流程本项目核心信用风险评级模型的主要的研发及设计实现策略及流程如下:(1) 数据获取,包括获取存量客户及潜在客户的数据。存量客户是指已经在证券公司开展相关融资类业务的客户,包括个人客户和机构客户;潜在客户是指未来拟在证券公司开展相关融资类业务的客户,主要包括机构客户,这也是解决证券业样本较少的常用方法,这些潜在机构客户包括上市公司、公开发行债券的发债主体、新三板上市公司、区域股权交易中心挂牌公司、非标融资机构等。(2)
2021-07-14 16:27:08
212
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人