数据分析与数据处理实例(某银行数据)
掌握numpy、matplotlib、pandas模块为前提,kmeans算法为主要分析工具
数据分析与数据处理
数据及含义
这里先上截图,具体的数据及数据含义点击下边链接,自行获取! https://download.csdn.net/download/weixin_44423698/11737958
方法
探索数据、清洗数据、清洗过后的选择需要的数据、对数据进行转换(如果数据很清晰,而且没有联系,可以不写)、标准化数据、Kmeans聚类和绘图得出结果。
代码实现
#引入数据处理与科学分析的三大模块
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np#引入sklearn模块里的机器学习算法k_means(是个函数)
from sklearn.cluster import KMeansclass DiverCar():#探索数据def tansuo(self,filepath):''':param filepath: bank-all.csv文件所在位置:return:'''df = pd.read_csv(filepath,sep=';')df.to_excel('HW_data/bank_data.xls')pass#清洗数据def qingxi(self,filepath):''':param filepath: bank_data.xls文件所在的位置:return:'''df = pd.read_excel(filepath)filter1 = df['job'] != 'admin.'filter2 = df['balance'] > 0filter = filter1 & filter2df = df[filter]df.to_excel('HW_data/bank_clean.xls')pass#清洗过后的选择需要的数据def xuanze(self,filepath):''':param filepath: bank_clean.xls文件所在的位置:return:'''df = pd.read_excel(filepath)df = df[['job','balance','duration','pdays','poutcome']]df.to_excel('HW_data/bank_choose.xls')pass#对数据进行转换(如果数据很清晰,而且没有联系,可以不写)def zhuanhuan(self,filepath):''':param filepath: bank_choose.xls文件的位置:return:'''#L:工作 R:余额 F:持续电话时间 M:间隔时间 C:上一次成功与否df = pd.read_excel(filepath)df['job'].replace(['unemployed','student','retired','self-employed','housemaid','services','blue-collar','technician','management','entrepreneur','unknown'],[0,1,2,3,4,5,6,7,8,9,5],inplace=True)df['L'] = df['job']df['R'] = df['balance']df['F'] = df['duration']df['M'] = df['pdays']df['poutcome'].replace(['failure','other','success','unknown'],[0,1,2,1],inplace=True)df['C'] = df['poutcome']df = df[['L','R','F','M','C']]df.to_excel('HW_data/bank_zhuanhuan.xls')pass#标准化数据def biaozhun(self,filepath):''':param filepath:bank_zhuanhuan.xls文件的位置:return:'''df = pd.read_excel(filepath)df = (df - np.mean(df,axis=0))/np.std(df,axis=0)df[['L', 'R', 'F', 'M', 'C']].to_excel('HW_data/bank_biaozhun.xls')pass#Kmeans聚类和绘图def kmeans(self,filepath,k=5):''':param filepath::return:'''df = pd.read_excel(filepath)kmeans = KMeans(k)kmeans.fit(df[['L', 'R', 'F', 'M', 'C']])df['label']=kmeans.labels_coreData = np.array(kmeans.cluster_centers_)#绘图xdata = np.linspace(0,2*np.pi,k,endpoint=False)xdata = np.concatenate((xdata,[xdata[0]]))ydata1 = np.concatenate((coreData[0], [coreData[0][0]]))ydata2 = np.concatenate((coreData[1], [coreData[1][0]]))ydata3 = np.concatenate((coreData[2], [coreData[2][0]]))ydata4 = np.concatenate((coreData[3], [coreData[3][0]]))ydata5 = np.concatenate((coreData[4], [coreData[4][0]]))fig = plt.figure()ax = fig.add_subplot(111,polar=True)ax.plot(xdata, ydata1, 'b--', linewidth=1, label='customer1')ax.plot(xdata, ydata2, 'r--', linewidth=1, label='customer2')ax.plot(xdata, ydata3, 'g--', linewidth=1, label='customer3')ax.plot(xdata, ydata4, 'o--', linewidth=1, label='customer4')ax.plot(xdata, ydata5, 'y--', linewidth=1, label='customer5')ax.set_thetagrids(xdata * 180 / np.pi, ['L', 'R', 'F', 'M', 'C']) # 有五个值,将一个圆分为五块ax.set_rlim(-3, 5) # 轴值范围,圆点是-3,最外层是5plt.legend(loc='best')plt.show()passpassif __name__ == '__main__':dc = DiverCar()#一步一步生成excel表,最后的函数方法通过图表展示出结果# dc.tansuo('HW_data/bank-all.csv')# dc.qingxi('HW_data/bank_data.xls')# dc.xuanze('HW_data/bank_clean.xls')# dc.zhuanhuan('HW_data/bank_choose.xls')# dc.biaozhun('HW_data/bank_zhuanhuan.xls')dc.kmeans('HW_data/bank_biaozhun.xls',k=5)pass
结果
生成的excel表
图表
判断依据
工作(数越大可能性越高)、余额(越大可能性越高)、持续间(越长可能性越高)、间隔时间天(越少可能性越高)、上一次的结果(数越大成功的可能性越高)
结果:将没有影响的数置为0,但因为影响较小(不是没有影响),我在这里并没有过多的处理。
有了结果就可以根据设定的标准判断哪些用户属于哪种分类,看看其存款的概率,而决定是否电话联系让其购买产品(存款)
数据分析与数据处理实例(某银行数据)相关推荐
- python信用卡违约预测分析_Python数据分析及可视化实例之银行信用卡违约预测(24)...
1.项目背景: 银行体系对于信用可违约进行预测,原始数据集如下: 2.分析步骤: (1)数据清洗(Data Cleaning) (2) 探索性可视化(Exploratory Visualization ...
- python信用卡违约_Python数据分析及可视化实例之银行信用卡违约预测(24)
1.项目背景: 银行体系对于信用可违约进行预测,原始数据集如下: 2.分析步骤: (1)数据清洗(Data Cleaning) (2) 探索性可视化(Exploratory Visualization ...
- python数据分析可视化实例_Python数据分析及可视化实例之基于Kmean分析RFM进行用户关怀...
系列文章总目录:Python数据分析及可视化实例目录 数据集下载 Python数据分析及可视化实例之全国各城市房价分析(含数据采集) Python数据分析及可视化实例之帝都房价预测 Python数据分 ...
- python从mongodb里取出数据进行可视化_Python数据分析及可视化实例之MongoDB增删改查...
1.MongoDB安装 有时候度娘还是给力的,相反一些博客的安装方法则显得凌乱: 最初使用Win7安装经常会出现意料不到的错误, 比如开机启动服务,服务器日志等. 上面链接安装步骤简单,没有炫技的成分 ...
- python数据预测案例_Python数据分析及可视化实例之疾病预测(分类)
Talk is cheap , show U the code. 该源码注释比较全面,需要对SKlearn有一定的了解, 当然,你也可以把它视作黑箱,做个调包侠也是大侠, 没错,本主用Bokeh进行可 ...
- python分析数据走势_Python数据分析及可视化实例之个股走势预测(26)
1.项目背景: 仅仅用来练手,个股走势如果真预测准确了,都就改行当操盘手了,哈哈! 但话又说回来,如果把数据曲线特征提取出来,再进行对比异常判断,也是可以的. 数据源,请关注微信公众号:海豹战队,回复 ...
- 【金猿产品展】Smartbi一站式大数据分析平台——一个平台、所有数据、无限可能。...
思迈特软件产品 本项目由思迈特软件投递并参与"数据猿年度金猿策划活动--2022大数据产业创新服务产品榜单及奖项"评选. 数据智能产业创新服务媒体 --聚焦数智 · 改变商业 ...
- 银行数据治理的一些思考(不限于银行 数据治理)
部分内容摘自 [成于微言]的微信公众号文章(来源:帆软数据应用研究院 作者:汪建辉),关于数据治理的思考来自于之前七年多的银行信贷科技从业经验,因为是在乙方,所以接触的银行相对多一些,做如下思考的分享 ...
- 银行数据治理的9大核心领域
股份制改革对我国银行业来说只是一个开始,企业在风险管理.创造价值等方面还有很长的路要走.风险管理要求提供精准的数据模型.创造价值要求充分银行数据资产,这是数据治理的外部推动因素.此外,随着第三次工业革 ...
- 数据治理展示血缘关系的工具_Nebula Graph 在微众银行数据治理业务的实践
本文为微众银行大数据平台:周可在 nMeetup 深圳场的演讲这里文字稿,演讲视频参见:B站 自我介绍下,我是微众银行大数据平台的工程师:周可,今天给大家分享一下 Nebula Graph 在微众银行 ...
最新文章
- 又快又简单的sql2005分页存储过程
- Goland如何断点调试Debug
- 计算机秋招必备!北京互联网大厂企业整理清单!
- 存储过程mysql报错1271_mysqldump备份失败以及解决方法汇总
- python识别节假日_Python3自动签到 定时任务 判断节假日的实例
- slice,Array.prototype.slice,Array.protyotype.slice.call
- jsp页面引用相关js,css文件路径问题
- 谷歌搜索引擎优化(谷歌seo)怎么做?
- windows10应用商店下安装kali子系统
- 线性代数核心思想及应用——行列式习题集(附详解)
- 专业心率监测器克服了心电噪声和电源的挑战---凯利讯半导体
- java 水晶按钮_报告水晶报告没有复制按钮
- python build时出现ERROR: Failed building wheel for evdev解决方案
- 深圳证券交易所关于五种市价委托方式的业务说明
- Linux嵌入式设备U盘挂载和拷贝文件
- 程序员教程-1章-计算机系统基础知识
- Metricbeat入门案例
- ImportError: cannot import name '_validate_leng问题解决
- Java名字的由来:Java和印尼爪哇岛有什么关系?
- HTML链接:带超链接的网页