cda

您的位置:首页 > 案例分享 > 银行数据宽表构建和描述分析

银行数据宽表构建和描述分析

2018-07-04

一、案例综述

案例编号:

102005

案例名称:

银行数据宽表构建和描述分析

作者姓名(或单位、或来源):

朱江

案例所属行业:

J662 货币银行服务

案例所用软件:

R

案例包含知识点:

宽表构建 数据描述

案例描述:

案例描述部分主要有两个内容,一是介绍客户信息的基本概念和分类;二是案例数据的基本介绍和ER


一. 客户信息

客户信息的收集主要用于客户分析,而客户分析一般是由公司内部不同部门组成的跨领域的团队实现的。客户分析的目标是找到一个单一准确的视角来制定策略,从而最优化的获取和保留客户、定义高价值客户。为了能够更好的实现客户分析,必须全方面的收集客户信息,客户信息主要分为以下四类。

Ø 描述信息:客户的基本属性信息,包括人口统计学的信息诸如性别、年龄、地理位置和收入,也包括自我描述类信息,对于产品的偏好和评价信息。从这些数据中可以细分出关于客户的有用的特征和分类,例如早期采用者(在产品介绍期和成长期采用新产品,对后面的采用者影响很大)、性价比追求者或特定的顾客角色。这些信息可以来自买卖信息、注册记录、调查、回访、情景访谈。这类信息一般易采集,但是质量难以保证。

Ø 行为信息:客户的行为信息,即客户在使用产品和服务的时候表现出来的一般的模式,包括购买行为、注册、浏览以及使用不同的设备等。例如经调查发现一些特定产品分类(消费性电子产品、家具)的顾客,晚上倾向于使用平板电脑购买,而白天倾向于使用台式机购买。行为信息的特点在于实时采集,需要整合汇总。

Ø 交互信息:客户和网站的交互信息,包含网站或者软件的点击信息、导航路径以及浏览行为。主要用途在于网站或软件实用性能测试,例如通过模拟真实的交互得到点击间隔对应的等级。收集数据的途径有:A/B测试,谷歌分析师(Google Analytics),实验室收集等。

Ø 态度信息:客户偏感性的信息,例如偏好、选择、愿望、品牌认可度及情怀等,可以通过调查问卷、特定关注群体的调查以及使用性测试等获得。一些知名的调查问卷公司常用来量化行为和交互信息对态度信息的影响。这些态度可能会影响描述信息中的量化的某些自我描述信息。

下图解释了这些信息之间的关系。

 

客户信息通常存储在数据仓库中,结合基于CRM的数据挖掘方法论进行信息分析,与商业应用结合最终产生价值。

二. 案例介绍

本案例的数据源自某银行的真实客户与交易数据,主要涉及客户的主记录、账号、交易、业务和信用卡数据等,即客户的一些描述信息和行为信息。一共八张二维表,存储在关系型数据库中,这些表的信息如下。

表名

标签

备注

主键

accounts

账户表

账户信息

account.id

card

信用卡表

账户的信用卡信息

card_id

clients

客户信息表

客户的特征信息

client_id

disp

权限分配表

客户与账户的操作权限信息

disp_id

district

人口统计信息表

客户所在地区的人口统计信息

A1

loans

贷款表

客户的贷款信息表

loan_id

order

消费信息表

客户的刷卡消费的信息

order_id

trans

交易表

客户的交易信息

trans_id

这里使用实体联系模型图(Entity-relationship model,俗称ER图)来描述这些表的关系,这里没有严格的引用标准的ER模型图形符号,我们的目标在于能够详尽的说明各表的组成和相互之间的逻辑关系。

 

图中共八个表格,其中深灰色带下划线的字段是主键。数据中包含的逻辑关系有:1. 一个人可以有多个账户,一个账户id可以对应多个客户id,即可以多个人共同管理一个账户,账户与客户的关系在权限分配信息表中显示。2. 贷款和信用卡为银行提供给客户的服务。3. 一个账户可以有多张信用卡。4. 一个账户只能一笔贷款。

数据可以用于构建客户违约贷款模型,即根据客户的描述信息和行为信息预测新客户是否会产生违约行为,为银行客户关系管理提供数据依据,从而有效的控制违约风险。于是这里就需要一个结构化的规整的宽表数据。用于数据清洗、描述及挖掘。

涉及到的数据处理有:1. 数据清洗,即根据业务知识将初始数据转换成在逻辑上对目标变量有预测能力的衍生数据,形成宽表,且在时间上只考虑客户最近两年的行为信息。2. 依据贷款表的还款状态定义客户是否违约。3. 描述分析衍生变量和目标变量之间的关系,从而分析这些变量对目标变量的影响程度。


本案例共包含三个知识点

读取数据,根据业务知识生成衍生变量,形成宽表

2 描述分析衍生变量和目标变量之间的关系

3 使用逻辑回归预测是否违约

案例执行形式

单人上机


二、案例知识点:

知识点1

知识点名称:读取数据,形成宽表

知识点所属工作角色:

数据导入,数据转换

知识点背景:

使用R导入csv格式的文件,依据业务逻辑转换目标变量,形成宽表

知识点描述

加载使用到的包,读取多个文件,转变目标变量

知识点关键词:

R 读取数据,数据转换

知识点所用软件:

Rstudio

操作目的:

R读取csv文件,转换目标变量

知识点素材(包括数据):

accounts.csv card.csv clients.csv disp.csv district.csv load_credit.csv loans.csv order.csv       trans.csv  

操作步骤:

操作步骤:

Ø bank文件夹拷贝到工作路径下,设置工作路径

 

Ø 加载要用的数据包

 

Ø 读取数据,一般情况下都要设置参数stringsAsFactors(字符自动转为因子)为假

 

得到的读取结果:

 

可见其中trans表包含的观测最多,有105万行

Ø 生成违约标识变量,根据loans表中变量status生成违约标识变量bad_good,这里使用ifelse函数。

 

Ø 客户描述信息

客户信息这里涉及到loansclientsdispdistrict 表,需要进行横向连接操作,这里筛选账户权限为‘所有者’的客户账户,根据相同字段进行简单的四表相连。而当数据量较大时一般先在单一表内计算衍生字段再进行连接。先将四表横向连接。

 

客户描述信息基于base表进一步衍生,客户贷款时的年龄可以由客户出生日期与贷款的时间差产生,同事计算客户居住地区的平均失业率、居住地区的平均犯罪率、人均GDP

 

选择对自己有用的字段生成客户基本信息表。

 

至此包含目标变量的客户基本信息表info已经生成。得到的结果:

 

Ø 客户行为信息

trans表中,amountbalance两个字段格式需要处理成数值型。

 

这里选择两年作为一个时间段,即选取每一个客户贷款前两年的数据。即需要根据trans表中客户的贷款时间找到每一个客户最近的贷款时间,并以此选择前两年的数据。

 

根据tmp2表生成贷款前两年每个客户的平均账户余额、标准差、变异系数。

 

根据tmp2表生成贷款前两年的出入账比率。首先按照客户账号和借贷类型计算对应的总金额,然后计算出入账比率。

 

生成客户行为信息表。

 

Ø 宽表汇总

将客户描述信息表与客户行为信息表进行连接得到待分析的宽表。

 

最终得到的宽表data0682个客户观测,14个维度变量,变量汇总如下:

 

 

至此我们得到了最终用于描述性分析和进一步推断分析使用的宽表。宽表中可见原始变量只有4个(包含标识变量),而衍生变量有10个,占了七成以上。在实际需求中,尤其是数据量较大的时候,需要生成一些衍生变量抽取数据中的关键信息。也可以根据业务逻辑需求生成特定的衍生变量。

Ø 保存表

 

操作结果:

如操作步骤中显示生成新的衍生变量,汇总成新的宽表


知识点小结:

本知识点显示了数据前期处理的完整流程,关键在于衍生变量逻辑上的选取和生成

Ø 知识点2

知识点名称:数据描述

知识点所属工作角色:

数据描述

知识点背景:

基本的数据描述分析包括描述性数据分析和探索性数据分析,描述性分析的目标主要在于描述数据集,而探索性分析的目标主要是在描述的基础上发现新的关联或者是未知的关系

知识点描述

描述性分析,探索性分析

知识点关键词:

描述性分析 探索性分析 箱线图 柱状图

知识点所用软件:

Rstudio

操作目的:

Ø 进行部分描述性分析,观察某些自变量与因变量之间的关系。因变量是否违约属于分类变量,多用箱线图和柱状图进行初步的观察。

知识点素材(包括数据):

data_final.csv

操作步骤:

Ø 读取数据,处理因变量使得易于理解

 

 

Ø 观察因变量,对因变量是否违约进行探索,观察变量分布情况。

 

 

Ø 探索因变量与连续变量

这里分析年龄和因变量之间的关系,探索不同年龄下客户的违约行为是否有差异。

 

 

Ø 探索因变量与分类变量

 

 

操作结果:

以上例举了常用的描述性分析的方法,用于初步观察数据之间的关系。

知识点小结:

描述性分析和探索性分析都是直观的通过图形来描述和探索变量之间的关系。 

Ø 知识点3

知识点名称:3 使用逻辑回归预测是否违约

知识点所属工作角色:

回归分析

知识点背景:

Ø 使用多元逻辑回归进行推断和预测分析

Ø 得到系数并且进行初步的观察和解释

Ø 通过逐步法和方差膨胀因子优化模型

知识点描述

逻辑回归

知识点关键词:

逻辑回归 逐步法 方差膨胀因子

知识点所用软件:

Rstudio

操作目的:

Ø 使用多元逻辑回归进行推断和预测分析

Ø 得到系数并且进行初步的观察和解释

Ø 通过逐步法和方差膨胀因子优化模型

知识点素材(包括数据):

data_final.csv


操作步骤:

Ø 读取数据,去除缺失值

 

Ø 初步逻辑回归

 

 

结果中只有一个显著性变量,并不合理,可能是因为别的变量之间相互抵消减弱了对预测变量的影响,故接着用逐步法对模型进一步优化

Ø 进行逐步logsitic回归

 

 

 

最终得到结果

 

可见其中对y有影响的变量是贷款金额,余额标准差,变异系数,出入账比率

Ø 查看共线性

 

 

可见没有多重共线性的影响

Ø 总结

从经过优化的回归结果可以看出衍生变量对预测模型产生的重要作用

操作结果:

见操作步骤中的总结部分

知识点小结:

逻辑回归中一般需要用逐步法对模型进行优化,并且需要注意多重共线性的检验。

完 谢谢观看

分享
收藏

OK