目录
一、关于数据
1、字段介绍
本数据描述了电信用户是否流失以及相关信息,共7044条数据,共20个字段:
字段 | 含义 |
---|---|
customerID | 用户ID |
gender | 性别(female,male) |
SeniorCitizen | 老年人(1-是,0-不是) |
Partner | 是否有配偶(Yes or No) |
Dependents | 是否经济独立(Yes or No) |
tenure | 客户的职位(共73个) |
PhoneService | 是否开通电话服务业务(Yes or No) |
MultipleLines | 是否开通了多线服务(Yes or No or No phoneservice) |
InternetService | 是否开通互联网服务(No,DSL数字网络,fiber optic光纤网络) |
OnlineSecurity | 是否开通网络安全服务(Yes or No or No internetservice) |
OnlineBackup | 是否开通在线备份服务(Yes or No or No internetservice) |
DeviceProtection | 是否开通设备保护业务(Yes or No or No internetservice) |
TechSupport | 是否开通技术支持服务(Yes or No or No internetservice) |
StreamingTV | 是否开通网络电视(Yes or No or No internetservice) |
StreamingMovies | 是否开通网络电影(Yes or No or No internetservice) |
Contract | 签订合同方式(月,一年,两年) |
PaperlessBilling | 是否开通电子账单(Yes or No) |
PaymentMethod | 付款方式 |
MonthlyCharges | 月费用 |
TotalCharges | 总费用 |
Churn | 顾客是否流失(Yes or No) |
2、导入数据
import pandas as pd
filepath=r"...\WA_Fn-UseC_-Telco-Customer-Churn.csv"
df=pd.read_csv(filepath,header=0,encoding="gbk")
df.head()
下面展示部分数据:
3、查看数据集信息
#获取数据类型的描述统计信息
df.describe()
df.shape
数据集的大小为(7043,21)
二、数据处理
1、查看缺失值
#查找缺失值
pd.isnull(df).sum()
目前数据集没有缺失值
2、数据信息
#查看数据类型
df.info()
TotalCharges表示总费用,这里是对象类型,需要转换类型为float
df['Churn'].value_counts()
数据集中有5174名用户未流失,有1869名流失,所以数据集不平衡
3、数据再处理
#转换类型
#df['TotalCharges']=df['TotalCharges'].convert_objects(convert_numeric=True)
df['TotalCharges'