sql数据导入错误代码: 0x80004005_SQL入门第八关 项目实战

不知不觉,学SQL已经一个多月了,每天下班学一个小时,有空做做练习题。从之前的焦虑到现在已经有了一定的自信了,猴子的课程真的很适合小白入门,尤其是SQL学习群里,助教老师很尽责,每个问题都会解答。当然更多的还是需要自己多加练习,查资料,看书,当自己遇到自己不会的问题时,通过自己研究解决问题的感觉太棒了,久违的成就感。

因为本身自己是做金融行业的,今天的项目实战就选取金融行业的实战数据进行一个简单的风控策略分析,其中不乏一些解决问题的心路历程,有点啰嗦,闲话少说,实战开始:

一、数据选取及导入

首先拿到数据的时候我是懵逼的:

3f38c195a7f468512a7a192598c9447d.png

从网盘上下载的数据选取的数据总共57356条,其实不算多。但主要是有69列,字段名都是因为英文,很多金融行业的专业词汇,自己只能看懂一些,虽然有部分释义,但只有几个,而且没办法一一对照着看,在Google的帮助下勉强把列名翻译成了我能看懂的中文,大概是这样:

5926159731a7baa53698b56c278c92d2.png
我尽力了

(一)在做数据导入之前,先弄清楚两个问题:自己有什么?自己想要干什么?

1.自己有什么?数据总共69个字段,包含了客户的贷前贷中贷后的各个标签维度,我们将逾期客户定义为坏客户,非逾期客户定义为好客户。

2.我想要什么?我想要的是如何通过已知客户的数据分析得出结论,设置风控策略,将其中一部分坏客户拒掉。这其中有一个假设,就是未来的客户表现在概率上的特征与存量数据客户在概率上是一致的。也就是说,我们通过已有的数据分析得出坏客户标签最明显的那部分客户,可能是一个、也可能是多个标签,将这部分客户剔除掉,就能使得我们的逾期率得到改善。由于是要做的是贷前风控策略,所以我们把其中贷中和贷后的数据都暂时删除掉。

最终经过自己的初步筛选,除了主键以外,我们选取的列还剩下20个可供我们进行分析。

(二)数据的导入

按照数据的步骤进行操作,结果第一步就卡壳了,EXCEL表打不开,在公众号上查了解决方案后,发现需要去网上下一个微软的数据导入读取插件,accessdatebaseengine之类的。在网上找到下载以后就能打开了。

紧接着一路顺畅,到了最后一步发现又难住了,提示错误。

eb7508480cecab9762f6bc8bc05f7972.png

直接将错误代码百度了一下,发现是字段太多了,字段太长导致超标了‘too large’,于是在上一步把255改成了100,实际可以视业务和字段情况而定,我这里就是图省事儿。

然后就好了

8241d2aa81e50138db84bf86a8e0d705.png

接下来就可以开始分析了

二、数据分析

首先,我们分析原数据里‘是否逾期’这一列直接用的0和1来表示的,也就是说我们要分析的Y变量可以直接用SUM(是否逾期)来表示我们的坏客户

第一步,我们先看看这组数据整体的逾期率,取出来是29.66%,可以说是很高了,也就是说我们需要从其他变量中选取一些变量来分析坏客户,然后假设把他们剔除掉以优化我们好客户的占比,目标是降低29.66%这个数:

fc51e77d6c8a49836a6dca1735fc729f.png

第二步,对各个列进行分析(这里有一个重要的小技巧,也是在助教老师的提示下才解决的)

首先,按信用评分分组统计,我的结果是这样的:

3c9494af212febd0d02462aa0b03470e.png

这里我发现其中B,C,D和HR,NC,E可以进行三三分类,因为他们的逾期率相差不大。如何运用SQL语句实现这一点,说实话我想了很久,最后还是在群里助教老师的提示下,茅舍顿开,才有了下面的语句实现了这一点:

bb24887c548d69539bfa2ed0d9c9c5d3.png

59c7a8c5232230dbcb65241882993667.png

把语句格式问题解决了,接下来就简单了,把所有需要分析的字段分别分组列出来就行了,这里由于篇幅有限,只放区分度最好的两个,除了上面的信用评级,还有征信总查询次数,具体SQL语句都大同小异:

下图是征信查询次数

79b53b712c86552bc58cb417d25619f5.png

最终我们得到的数据结果分组后,在EXCEL上显示如下图

c1ff860d13bf865ccf772f17aab840c6.png

三、计算提升度和评估执行后的效果

为什么要计算提升度?计算提升度是指——我们通过运用数据来计算各分组最差的那一档的客户,占总逾期账户数的权重是多少。具体公式是:分组最差档位逾期客户数/总逾期客户数/分组用户占比。

3d02664f16ab414182fd1d17e44fd6a1.png

这里得到的数值,我们称之为提升度。。大概逻辑是:最差这一档逾期客户占比除以这一档所占的权重。将以上各个分组计算后,于是我们得到了下面这个图:

cabf1f731a585889b8854f49c8b08ef4.png

从图中我们可以看出:“征信总查询次数”和“信用等级”这两个字段最差档位的逾期客户的提升度最大。

接下来我们就可以拟定我们的风控策略了:

3cc6a4d2dc46e245167efcb271d97f54.png

两种策略的执行结果分别是:

若征信查询次数>=21则拒绝,总逾期率会下降1.69%,但会拒绝掉5.44%的客户。

若信用评级为“E,HR,NC”则拒绝,总逾期率会下降3.54%,但会拒绝掉12.09%的客户。

根据这两天策略,我们可以直接给出建议,看是为了选择3.54%的逾期率降幅去牺牲掉12.09%的客户(这其中有7.66%的好客户)呢?还是只选择降低1.69%的逾期率,只牺牲掉5.44%的客户(这其中有3.17%的好客户)?这就要看公司决策层的战略和风险偏好了,后者对风险的容忍度较高。

四、总结和感悟

实际上,在信贷行业的策略中,我们要做的永远都是一个平衡问题,如何去找到收益和风险之间的那个点。

目前头部的几家互联网金融公司和各大银行所采用的风控模型都是基于大数据量下的风控,所以数据分析能力在当今的信贷行业相当重要,在客户数据达到一定量级以后,我们关注的都是大数据条件客户逾期的概率问题。总体所设定的风险策略是自己能风险偏好能接受的,同时能产生收益最大化,也就是我们信贷风险分析的终极目标。

这其中有几个问题值得我们进一步学习和探讨:

1.自己所做的分档是根据数据表现人工抉择表现接近的归为一档的分档方式,是否有更科学的分箱规则,如何来实现?

2.单维度的风控策略逻辑相对简单,但现实中我们往往遇到的多维度和更加细化的策略抉择问题:例如‘信用评级’最低的那一个档位里,有没有其他变量又能从中区分出坏人中的好人,或者是坏人中的‘铁坏人’,这就涉及到不同变量之间的交叉分析,到底哪几个特征综合在一起抓住坏人的概率更高?

基于以上两个问题,我想机器学习和PYTHON运用 能告诉我答案,咱们高级课程见。。。。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/527343.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

虚拟主机选择php版本,虚拟主机的php版本如何选择

虚拟主机如何选择php版本?虚拟主机选择PHP版本,这是根据网站程序设置的。例如,新版本的WordPress需要PHP5.6和更高版本,而旧版本,如WordPress4,可以使用PHP5.2、5.3和其他更低版本。虚拟主机的PHP版本是什么…

php生成10万个字符串,有什么好的方法可以生成十万条不重复的13位纯数字字符串...

有什么好的方法可以生成十万条不重复的13位纯数字字符串回复内容:有什么好的方法可以生成十万条不重复的13位纯数字字符串一个个来。从13个0开始,一次加1。。。可用时间戳来生成,或者后面再加随机数package com.xtl.demo;import java.util.Ha…

python金融数据怎么获取_class类怎样在python中获取金融数据?

我们搜集金融数据,通常想要的是利用爬虫的方法。其实我们最近所学的class不仅可以进行类调用,在获取数据方面同样是可行的,很多小伙伴都比较关注理财方面的情况,对金融数据的需要也是比较多的。下面就class类在python中获取金融数…

有十五个数按由大到小顺序存放在一个数组中_数据结构基础 (代码效率优化, 线性表, 栈, 队列, 数组,字符串,树和二叉树,哈希表)...

作者:张人大代码效率优化复杂度 -- 一个关于输入数据量n的函数时间复杂度 -- 昂贵与代码的结构设计有着紧密关系一个顺序结构的代码,时间复杂度是O(1), 即任务与算例个数 n 无关空间复杂度 -- 廉价与数据结构设计有关数据结构 -- 考虑如何去组织计算机中…

matlab 转换图片格式,Matlab实现图片格式转换 pgm转jpg等

在Matlab下,转换图片格式相对比较容易,本文以 PGM 转 JPG 为例,贴出示例程序:% 将pgm图片批量转换为jpg图片function [ ] pgm2jpg( )% 读取指定目录下面所有的pgm格式图片pgms dir(C:\Users\kitty\test\*.pgm);num_pgms length( pgms );fo…

python3库查看调用_Python 3 中调用 COM 的库文件 | 学步园

在 Python 2.x 时代貌似有支持 COM的。 http://svn.python.org/projects/ctypes/tags/release_0_6_2/ctypes/win32/com/__init__.py 这个 win32 的 COM 包到了 3.x 时代就不见了。从那里参考和借鉴了很多,也被误导了很多,因为从2.x 到 3.x 变化很大&…

matlab的try函数,matlab – 是否可以在没有try块的情况下测试函数句柄?

要测试函数句柄,例如在你的问题中筛选出伪造的x notreallyafunction,你可以使用functions命令检查句柄并获取引用函数的名称,类型(简单,嵌套,重载,匿名等),和位置,如果它在文件中定义.>> x notreallyafunction;>> functions(x)ans function: notreallyafunction…

图片马赛克去除工具_图片太多该如何进行排版呢?

胖友们大家好呀,我是三儿昨天三儿刚讲了多文字如何排版就有胖友在后台留言说问三儿如何对图片较多的内容排版那么今天三儿就来教大家图片较多时我们该怎样排版!赶紧拿着小本本做好笔记哦!图片的重要性图片在排版设计中,占有很大的…

神经网络人口预测matlab,BP神经网络预测(人口)程序(matlab)

自己测试人口预测的matlab实现:x[5416755196563005748258796602666146562828646536599467207662076585967295691727049972538745427636878534806718299285229871778921190859924209371794974962599754298705100072101654103008104357105851107507109300111026112704…

idhttp返回乱码_HTTP客户端POST方式中文编码(乱码)解决方案(转)

这段时间,在给一个地区门户网站(alexa全球排行1200左右)做SSO集成,其中的一个部分就是Web Services服务接口,以及客户端,我们采用的是REST方式,不是SOAP,大致就是客户端通过HTTP POST方式向服务器提交数据&…

php如何监听页面滚动,html5中在元素滚动条在滚动时触发的事件onscroll

实例元素滚动时执行 JavaScript定义和用法onscroll 事件在元素滚动条在滚动时触发。提示: 使用 CSS overflow 样式属性来创建元素的滚动条。浏览器支持语法HTML 中:JavaScript 中:object.οnscrοllfunction(){myScript};JavaScript 中, 使用 addEventListener() 方…

stream去重_重复数据如何处理?List集合去重的四种方式

List集合在Java日常开发中是必不可少的,只要懂得运用各种各样的方法就可以大大提高我们开发的效率,适当活用各种方法才会使我们开发事半功倍。但是,有时候难免会遇到集合里的数据是重复的,需要进行去除。今天,就给大家…

php强制转成字符串,php怎么强制转成字符串

php强制转成字符串的方法:首先创建一个PHP示例文件;然后定义一个变量;最后通过PHP中的string方法强制转换成字符串即可。本文操作环境:windows7系统、PHP7.1版,DELL G3电脑PHP强制转换类型获取数据类型 :1.如果想查看某…

虚幻4模型提取_【UnrealEngine4】从虚幻四的着色模型到NPR

本文主要分享虚幻四中着色器的使用技巧与如何添加自己的着色模型的方式。(正在设计的一个像素风格的渲染流程,同样采用本文的方法,对引擎的着色模型进行了改造,可以接受天光/点光等的自定义照明效果)鄙人消失了一个月左右,又回来了…

可观测性PHP秩判据,线性系统的可控性与可观测性

现代控制理论中用状态方程和输出方程描述系统,输入和输出构成系统的外部变量,而状态为系统的内部变量,这就存在着系统内的所有状态是否可受输入影响和是否可由输出反映的问题,这就是可控性和可观测性问题。如果系统所有状态变量的…

ubuntu虚拟机进程被杀死_Ubuntu -- 查看和杀死进程

今天在netbeans中关闭webrick时,发现没有关闭掉,打入localhost:3000 依然显示页面,发现无法从nb中再次关闭只有进入ubuntu的进程下关闭查看进程:1, ps -e2, fengfeng:~$ sudo netstat -antupActive Internet connections (servers and established)Proto Recv-Q Send-Q Local…

matlab中的nlinfit,matlab中nlinfit问题!!!!!!!!!!!!

matlab中nlinfit问题!!!!!!!!!!!!mip版 关注:272 答案:3 悬赏:40解决时间 2021-01-19 04:20已解决2021-01-18 13:28muinline(beta(…

springboot幂等性_请问,springboot项目支付接口设计,如何保证支付的幂等性,并能给前端反馈友好的提示?...

什么是幂等性?幂等是一个数学与计算机学概念,在数学中某一元运算为幂等时,其作用在任一元素两次后会和其作用一次的结果相同。“ 在计算机中编程中,一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函…

php图片旋转显示不出来的,php – 我服务的图像不正确,它们都显示为旋转90度

在Exif中设置了方向.图片没有旋转phisicaly.图像查看器可以使用它,但标签中的浏览器不会旋转它.你也可以“飞行”旋转它.只需通过exif_read_data()获取Exif信息,如果在’Orientation’中有3(180deg),6(90CW)或8(-90CCW),则旋转它// dump the picture and stop the script$sourc…

bootstrap 滚动 进度条_bootstrap实现动态进度条效果

Bootstrap的动态进度条:html: 创建一个modal 这里使用fade先将modal隐藏起来,然后modal里面嵌入progress 代码很简单保存中:{{length}}%PS:关于模态框:如果你想实现点击空白处不关闭模态框,可以在这里初始化modal的参数&#xf…