银行营销数据的Python数据分析--连接SQLserver
一共有4万多条数据,来自著名的machine learning网站UCI,数据集名称是bank marketing,应该很好搜到
数据是这样的4个文件,分别是个人信息、营销信息、社会经济情况和最终结果,我把导入到SQLserver中
每个文件都有一个id变量,是每个银行用户独一无二的标识,我把它设置为了主键
接下来用Python连接SQLserver读取数据,代码如下
pip install pymssql
import pymssql
connect = pymssql.connect('(local)', 'sa', '密码', '要访问的数据库名称')
cursor = connect.cursor()
cursor.execute("select*from bank_additional")
我先在数据库里合成了这四个文件为一个bank_additional,其实也可以直接Python写SQL语句合成,用到join on
data = cursor.fetchall()
这样数据就成功从SQLserver读取到了Python,但是这是数组文件,为便于后续分析我把转化为了dataframe
import pandas as pd
data=pd.DataFrame(data,columns=[.....])
接下来就可以基于data做数据分析了
import pandas as pd
import numpy as np
import random
import warnings
warnings.filterwarnings("ignore")
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.model_selection import GridSearchCV
首先画出出各个分类型变量的分布情况:
categorcial_variables = ['job', 'marital', 'education', 'default', 'loan', 'contact', 'month', 'day_of_week', 'poutcome','y']
for element in categorcial_variables:plt.figure(figsize=(10,4))sns.barplot(data[element].value_counts().values, data[element].value_counts().index)plt.title(element)
然后是各个分类型变量与y的关系
for ele in categorcial_variables:pd.crosstab(data[ele],data['y']).plot.bar()
这里其实变量Default,education, job, housing,loan等是存在缺失值unknown的,但是考虑到这是因为受访者不愿意透露自己的真实情况,对结果也是有一定影响的,因此处理方式是将unknown作为一个单独的取值
好了,下面是对数值型数据的简单描述
numerical_variables = ['age','campaign', 'pdays', 'previous', 'emp.var.rate', 'cons.price.idx','cons.conf.idx','euribor3m', 'nr.employed']
data[numerical_variables].describe()
同样数值型变量的‘pdays’也存在缺失值,用999表示,注意到
几乎所有pdays的缺失值,另一变量poutcome的取值都是noexist,zhe很好理解,由于之前没有做过营销,因此数据不存在,过去的营销结果自然是noexist,所以变量pdays的信息可以被poucome替代,所以简单删除这一变量即可。
下面对所有的分类型变量进行0-1编码,使他们成为新的0-1变量,做出新的变量之间的相关系数图
银行营销数据的Python数据分析--连接SQLserver相关推荐
- mysql source导入_读取MySQL数据库中的数据【Python数据分析百例连载】
当所需的数据存贮在MySQL数据库中时,那么数据分析首要任务就是要通过Pandas读取MySQL数据.例如,某网站注册用户信息保存在MySQL数据库中,如图所示(部分数据),下面将使用Pandas的r ...
- 大数据之Python数据分析 实训 信用卡客户风险评价之一、处理信用卡数据异常值
一.处理信用卡数据异常值 实训数据:https://pan.baidu.com/s/1RduW2P0UtdgvQowIu26u7A 1 实训目标 (1) 掌握异常值的识别与处理方法. (2) 构建信用 ...
- 用银行营销数据学习数据挖掘:探索预测客户购买行为的模型
0 了解数据 来源: UCI Machine Learning Repository (https://archive.ics.uci.edu/ml/datasets/bank+marketing) ...
- 爬table数据_爬取NBA球员薪资数据【Python数据分析百例连载】
通过Pandas模块也可以实现简单的爬虫.主要使用Pandas的read_html方法,该方法用于导入带有table标签的网页表格数据,语法如下: pandas.read_html(io,match= ...
- 大数据之Python数据分析 实训 信用卡客户风险评价之二、构建信用卡客户风险评价关键特征
构建信用卡客户风险评价关键特征 实训数据:https://pan.baidu.com/s/1RduW2P0UtdgvQowIu26u7A 1 实训目标 (1) 掌握评分卡模型的原理. (2) 构建信用 ...
- python怎么连接sqlserver数据库_python连接数据库SQLServer
python连接数据库SQLServer 连接数据库的几种方式 python odbc pymssql whl如何安装 whl类似于离线安装包,需要使用pip安装. pip install指令就可以安 ...
- python提取数据段_python提取数据段 python数据分析
如何在python中用slice分段取数据? 执行以下操作:>> a=range(6)>> a[0, 1, 2, 3, 4,5]>& ...
- NBA表格_爬取NBA球员薪资数据【Python数据分析百例连载】
通过Pandas模块也可以实现简单的爬虫.主要使用Pandas的read_html方法,该方法用于导入带有table标签的网页表格数据,语法如下: pandas 主要参数说明: io:字符串,文件路径 ...
- 银行营销数据分析---Python(numpy、pandas、matplotlib)
数据分析[Python] 项目介绍 我的理解 了解数据 源数据解析 源数据概况 数据处理 数据分析 数据展示分析 影响因素分析 分析总结 项目介绍 数据来源:kaggle银行营销数据 工具:Pytho ...
最新文章
- Kaggle比赛的进阶技巧和国内比赛前十套路
- 基于 TensorFlow 的图像识别(R实现)
- MyBatis实现与插件开发
- MQ和RabbitMQ作用特点
- 怎样用“python”快速入门数据分析?
- apollo 配置中心_apollo-1:apollo配置中心单机模拟分布式部署
- 分数怎么在计算机上关,电脑如何在注册表上关闭AutoRun功能
- Android studio http 代理设置
- c/s三层结构信息系统的三个层次_如何使用ABP框架(2)三层架构与领域驱动设计的对比...
- osgi java web_在Tomcat中使用Java Web应用程序的OSGi软件包
- 【笔记】Windows Sublime text安装json格式化插件SublimePrettyJson
- ubuntu20.04 显卡驱动 cuda cudnn安装
- 关于游戏中美术文件夹的划分
- 2017腾讯暑期实习生从笔试到面试总结(附带华为、阿里面试经历)
- 【Android】- 百度导航引擎初始化失败
- uva 1395 Silm Span 【MST-Kruskal】
- control c linux命令,linux中Control+C是什么指令?使用什么命令可以给一个进程发出一个这样的指令?...
- arc64,x86等架构linux,windows系统openjdk下载
- python爬取起点vip小说章节_python 爬取起点小说vip章节(失败)
- 华为软件测试笔试真题,抓紧收藏不然就看不到了