精华内容
下载资源
问答
  • 提出了应用主成分分析的BP神经网络信息流失预测模型。结合5折交叉验证,模型对来自3个地市的营销返回样本,在训练分类时间和预测分类精度上与未经主成分分析降维的BP神经网络方法进行了比较分析。实验结果表明模型获取...
  • 信息时代企业人才流失的博弈分析及对策探讨.pdf
  • 该模型可以同时学习潜在的顺序信息,并从时间序列特征中捕获重要的局部特征。 此外,我们介绍了一种通过在现有特征上训练XGBoost模型来构造新特征的方法。 在真实数据集上的实验结果表明,我们提出的模型比其他比较...
  • 基于数据挖掘的客户流失分析案例

    千次阅读 2015-12-05 22:08:41
    例如,对客户的行为特征进行分析,可以了解有多少客户流失,客户是什么时候流失的,以及客户是如何流失的等问题,从而监控客户流失、实现客户关怀。 应用数据挖掘技术可以根据过去拥有的客户流失数据
    
    客户挽留在很多行业都是一个备受关注的问题,比如电信、银行、保险、零售等。要做客户挽留就需要对客户流失进行预警、客户流失原因分析、客户满意度或忠诚度研究、客户生命周期研究等相关问题进行深入而全面的分析。例如,对客户的行为特征进行分析,可以了解有多少客户流失,客户是什么时候流失的,以及客户是如何流失的等问题,从而监控客户流失、实现客户关怀。

    应用数据挖掘技术可以根据过去拥有的客户流失数据建立客户属性、服务属性和客户消费数据与客户流失可能性关联的数学模型,找出客户属性、服务属性和客户消费数据与流失的关系,给出明确的数学公式或规则,从而计算出客户流失的可能性。

    电信行业较早地提出了客户关系管理、关系营销等营销管理模式,学界和企业界的积极参与也推动了客户流失行为的相关研究。电信运营商在多年的业务支持系统建设中,积累了大量的历史业务数据,这些数据涉及到用户话单、通信计费、客户交费、市场营销、业务收入等各个方面,它们不仅是历史记录的呈现,同时还蕴含了客户的消费模式,客观上就为数据挖掘提供了丰富的素材。对于运营商来说,成熟有效的管理模式和技术可以更好地进行客户管理,提高用户的粘性才是硬道理。

    建立流失模型可以解决由于客户离网导致的市场份额减少、营销成本增加、收入降低等问题,提高挽留成功率,降低离网率,降低挽留服务成本,减少由于客户离网所带来的收入损失。对客户按照流失倾向评分,产生最可能流失客户的名单,再由运营商对其进行挽留,把损失降到最低。

    客户流失分析大致步骤主要分为以下四步:

    一是寻找关键因子,比如探索用户离网的影响因素,根据影响因素判断用户离网发生的概率。通过研究现有套餐产品客户在呼叫通话、业务使用等各方面的行为特征,找到关键影响因子;

    二是构建预测模型:采用数据挖掘监督类模型技术,训练得到潜在客户预测模型,用于预测将会选择该类套餐产品的潜在流失用户群,并以概率形式量化之。如果已经建立了Logistic回归模型,则可以根据模型,预测在不同的自变量情况下,客户流失的概率有多大;

    三是判别:实际上跟预测有些类似,根据Logistic模型,判断客户有多大的可能性将会流失。这种技术与线性回归类似,只是用分类目标字段代替了数值字段,而在目标含有两个截然不同的类别时可以使用二项模型;

    四是推送营业前台:通过营销管理平台,直接将高概率产品目标流失客户群推送到营业厅、短信及网站、社区经理等营销渠道,将挽留策略和产品在合适的时间、以合适的语言推荐给合适的客户,从而赢得营销。

    客户流失模型需要完成两个方面的任务,即分析流失客户的特征,导致客户流失的因素及客户流失在这些因素上的分布情况,还有就是得出潜在的流失客户群。

    客户流失预测包括决策树、神经网络和Logistic回归等研究方法,下面就通过一个利用二项Logistic回归预测电信客户流失的实例,为大家介绍一种可用的客户流失模型,为运营商的客户关系管理提供有益的借鉴,也为其他行业的客户流失分析提供挖掘思路。

    客户流失的几个因素,主要有:客户基本信息,包括年龄、性别、邮编、地址等;客户档案,包括手机号、付费方式、停机日期、入网时长、工龄、是否使用租用设备、是否使用电话卡业务、是否使用语音;客户账户,包括服务、是否使用互联网等;计费信息,包括拨打电话数、付费总额、欠费总额等。
    展开全文
  • 因此,量化该地区因水蚀造成的土壤流失似乎很重要。 Wischmeier建模用于对侵蚀现象涉及的主要因素进行建模。 专题图的横切图和USLE公式的应用使得在1986年和2014年分水岭规模的侵蚀率评估成为可能。尽管土壤易受...
  • 就是这个东西!导致你流失20%-50%的新用户。...2.授权时将头像昵称等信息存入数据库; 3.然后对比数据库里授权用户数和openid数量,授权人数/总用户数; 4.另外现在大部分都是要Button按钮唤起的用户授权,可以埋点统
  • 客户生存与流失预测 客户流失率是评估不断增长的业务的最重要指标之一。 虽然这不是最幸福的衡量标准,但它可以使您的公司了解保留客户的事实。 Heroku应用程序My Heroku应用程序: : 生存分析 生存分析是统计的一...
  • 本研究使用修正的土壤流失方程(RUSLE)模型并纳入地理信息系统(GIS)框架中,估算了巴西最重要的农业地区巴西塞拉多的年土壤流失率及其空间分布。 为此,根据RUSLE模型因子的功能确定土壤侵蚀的年增长率:降雨...
  • 针对数据挖掘方法在电信客户流失预测中的局限性,提出将信息融合与数据挖掘相结合,分别从数据层、特征层、决策层构建客户流失预测模型。确定客户流失预测指标;根据客户样本在特征空间分布的差异性对客户进行划分,...
  • 电信设备-基于GIS的水土流失地理信息采集器.zip
  • 用户流失分析

    千次阅读 2021-09-03 16:14:05
    用户流失预测 案例描述 项目描述:客户流失是所有与消费者挂钩...数据集:本案例所使用数据集来自Kaggle平台,数据集一共提供了7043条用户样本,每条数据包含21个属性,由多维度的客户信息和最终是否流失的标签组成,

    用户流失分析

    案例描述

    项目描述:客户流失是所有与消费者挂钩行业都会关注的点。因为发展一个新客户是需要一定成本的,一旦客户流失,除了浪费拉新成本,还需要花费更多的用户召回成本。 所以,电信行业在竞争日益激烈当下,如何挽留更多用户成为一项关键业务指标。为了更好运营用户,这就要求要了解流失用户的特征,分析流失原因,确定挽留目标用户并制定有效方案。

    数据集:本案例所使用数据集来自Kaggle平台,数据集一共提供了7043条用户样本,每条数据包含21个属性,由多维度的客户信息和流失与否的标签组成。

    分析方法
    根据现有数据,对数据进行拆分,从基本信息,服务信息,签约信息,三个方面进行用户画像分析
    在这里插入图片描述

    数据介绍

    用Python导入并查看数据
    在这里插入图片描述
    在这里插入图片描述

    数据总共有21个列标签,除了最后一列Churn表示客户的流失标签外,其他20列数据可以分为三类特征:客户的基本信息,开通的服务信息,签订的合约信息。
    各个数据标签的解释:

    标签名称字段解释特征类型
    customerID用户ID基本信息
    gender性别(male 男/female 女)基本信息
    SeniorCitizen老年人基本信息
    Partner婚姻情况(yes/no)基本信息
    Dependents是否经济独立(yes/no)基本信息
    tenure入网时间基本信息
    PhoneService是否开通电话服务(yes/no)服务信息
    MultipleLines是否开通多线业务(yes/no)服务信息
    InternetService是否开通网络服务(yes/no)服务信息
    OnlineSecurity是否开通网络安全服务(yes/no)服务信息
    OnlineBackup是否开通在线备份服务(yes/no)服务信息
    DeviceProtection是否开通设备保护业务(yes/no)服务信息
    TechSupport是否开通技术支持服务(yes/no)服务信息
    StreamingTV是否开通网络电视业务(yes/no)服务信息
    StreamingMovies是否开通在线电影业务(yes/no)服务信息
    Contract签订合同的方式(月,一年,两年)签约信息
    PaperlessBilling是否开通电子账单(yes/no)签约信息
    PaymentMethod付款方式(Bank transfer/Credit card/Electronic check/Mailed check)签约信息
    MonthlyCharges每月的费用签约信息
    TotalCharges总费用签约信息
    Churn用户是否流失(yes/no)流失标签

    数据预处理

    查看并转换数据类型

    在这里插入图片描述

    • TotalCharges总费用 和 MonthlyCharges每月费用 ,都应该是数值型数据,转换TotalCharges为数值型数据
      在这里插入图片描述
    缺失值处理

    在这里插入图片描述
    TotalCharges有11个缺失值,对于缺失值的处理一般分为删除和填充缺失值两种方式,
    在这里插入图片描述
    进一步查看缺失值的详细情况,然后确定如何处理缺失值
    在这里插入图片描述
    缺失的为TotalCharges(总费用),而MonthlyCharges(月费用)并没有缺失,而且都是流失的客户群体,根据情况分析,这些缺失值对应的用户应该在交完当月的费用后就流失了,因此,可以采用MonthlyCharges(月费用)来填充TotalCharges(总费用)的缺失值
    在这里插入图片描述

    可视化分析

    查看客户流失比例分布
    在这里插入图片描述
    基本信息对客户流失情况的影响

    #性别 
    plt.figure(figsize=(14,10))
    plt.subplot(2,2,1)
    gender = sns.countplot(x='gender',hue='Churn',data=data,palette='hls')
    plt.xlabel('性别',size=20)
    
    #SeniorCitizen  老年人对流失率的影响
    plt.subplot(2,2,2)
    SeniorCitizen = sns.countplot(x='SeniorCitizen',hue='Churn',data=data,palette='hls')
    plt.xlabel('老年人(0为年轻人,1为老年人)',size=20)
    
    #婚姻
    plt.subplot(2,2,3)
    SeniorCitizen = sns.countplot(x='Partner',hue='Churn',data=data,palette='hls')
    plt.xlabel('婚姻',size=20)
    
    #非经济独立
    plt.subplot(2,2,4)
    SeniorCitizen = sns.countplot(x='Dependents',hue='Churn',data=data,palette='hls')
    plt.xlabel('非经济独立(No为独立,Yes为未独立)',size=20)
    
    

    在这里插入图片描述
    由上图可知:
    性别对客户流失情况基本没有影响,
    年龄对客户流失情况有影响,老年人的流失率要远高于年轻人的流失率,
    婚姻情况对客户的流失有影响,未婚客户的流失率要高于已婚的客户,
    经济能力对客户流失有影响,经济为独立的客户流失率要高于以独立的客户

    #入网时间的流失比例
    tenure = data[['tenure','Churn']]
    #把Churn(是,否),替换为数值(1,0)方面计算比率
    tenure['Churn'] = tenure['Churn'].map({'Yes':1,'No':0})
    tenure = tenure.groupby('tenure').sum()/tenure.groupby('tenure').count()
    tenure = tenure.reset_index()
    
    #画图
    plt.figure(figsize=(14,6))
    plt.plot(tenure['tenure'],tenure['Churn'],c='g')
    plt.title('入网时间的流失情况',size=18,color='black')
    plt.show()
    

    在这里插入图片描述
    由上图可知:除了入网时间为0的刚入网客户,流失率是随着入网时间成下降趋势的

    服务属性对客户流失的影响

           
    column = ['OnlineSecurity', 'OnlineBackup', 'DeviceProtection', 'TechSupport', 'StreamingTV', 'StreamingMovies']      
    for i in column:
           
            plt.figure(figsize=(15,5))
            plt.subplot(1,3,1)
            plt.pie(data[data[i]=='Yes']['Churn'].value_counts(),
                    labels=['No','Yes'],
                    explode=(0.08,0),
                    autopct='%0.2f%%',
                    shadow=True,
                    textprops={'fontsize':15,'color':'w'})
            plt.title('{} = Yes'.format(i),c='w',size='15')
    
            plt.subplot(1,3,2)
            plt.pie(data[data[i]=='No']['Churn'].value_counts(),
                    labels=['No','Yes'],
                    explode=(0.08,0),
                    autopct='%0.2f%%',
                    shadow=True,
                    textprops={'fontsize':15,'color':'w'})
            plt.title('{} = No'.format(i),c='w',size='15')
    
            plt.subplot(1,3,3)
            plt.pie(data[data[i]=='No internet service']['Churn'].value_counts(),
                    labels=['No','Yes'],
                    explode=(0.08,0),
                    autopct='%0.2f%%',
                    shadow=True,
                    textprops={'fontsize':15,'color':'w'})
            plt.title('{} = No internet service'.format(i),c='w',size='15')
            plt.show()
    

    在这里插入图片描述

    (此处省略部分图片)

    由上图可以推测出:

    • 所有没有使用互联网服务的客户流失率为7.4%,可以判断这六个属性只有在客户开通互联网服务后才有用,所以不会影响到没有开通的客户。
    • StreamingTV,StreamingMovies这两个服务对客户流失情况基本没有太大影响。
    • 开通其他四个互联网服务的用户流失率都有不同程度的降低,可以推断为多绑定这四个业务有助于客户的留存提升

    PhoneService 电话业务

    # PhoneService 电话业务
    plt.figure(figsize=(14,7))
    plt.subplot(1,2,1)
    plt.pie(data[data['PhoneService']=='Yes']['Churn'].value_counts(),
            labels=['No','Yes'],
             explode=(0.08,0),
            autopct='%0.2f%%',
            shadow=True,
            textprops={'fontsize':20,'color':'w'})
    
    plt.subplot(1,2,2)
    plt.pie(data[data['PhoneService']=='No']['Churn'].value_counts(),
            labels=['No','Yes'],
             explode=(0.08,0),
            autopct='%0.2f%%',
            shadow=True,
            textprops={'fontsize':20,'color':'w'})
    plt.show()
    

    在这里插入图片描述
    MultipleLines 多线程服务

    plt.figure(figsize=(15,5))
    plt.subplot(1,3,1)
    plt.pie(data[data['MultipleLines']=='Yes']['Churn'].value_counts(),
            labels=['No','Yes'],
             explode=(0.08,0),
            autopct='%0.2f%%',
            shadow=True,
            textprops={'fontsize':15,'color':'w'})
    plt.title('MultipleLines = Yes',c='w',size=20)
    
    plt.subplot(1,3,2)
    plt.pie(data[data['MultipleLines']=='No']['Churn'].value_counts(),
            labels=['No','Yes'],
             explode=(0.08,0),
            autopct='%0.2f%%',
            shadow=True,
            textprops={'fontsize':15,'color':'w'})
    plt.title('MultipleLines = No',c='w',size=20)
    
    plt.subplot(1,3,3)
    plt.pie(data[data['MultipleLines']=='No phone service']['Churn'].value_counts(),
            labels=['No','Yes'],
             explode=(0.08,0),
            autopct='%0.2f%%',
            shadow=True,
            textprops={'fontsize':15,'color':'w'})
    plt.title('MultipleLines = No phone service',c='w',size=20)
    plt.show()
    

    在这里插入图片描述
    由上面的图可推断出:
    PhoneService ,MultipleLines 对客户流失情况影响都很小。

    plt.figure(figsize=(15,5))
    plt.subplot(1,3,1)
    plt.pie(data[data['InternetService']=='Fiber optic']['Churn'].value_counts(),
            labels=['No','Yes'],
             explode=(0.08,0),
            autopct='%0.2f%%',
            shadow=True,
            textprops={'fontsize':15,'color':'w'})
    plt.title('InternetService = Fiber optic',c='w',size='15')
    
    plt.subplot(1,3,2)
    plt.pie(data[data['InternetService']=='DSL']['Churn'].value_counts(),
            labels=['No','Yes'],
             explode=(0.08,0),
            autopct='%0.2f%%',
            shadow=True,
            textprops={'fontsize':15,'color':'w'})
    plt.title('InternetService = DSL',c='w',size='15')
    
    plt.subplot(1,3,3)
    plt.pie(data[data['InternetService']=='No']['Churn'].value_counts(),
            labels=['No','Yes'],
             explode=(0.08,0),
            autopct='%0.2f%%',
            shadow=True,
            textprops={'fontsize':15,'color':'w'})
    plt.title('InternetService = No',c='w',size='15')
    plt.show()
    

    (图略)
    由图可知:
    InternetService = Fiber optic的用户数量最多,但流失率也最高41.89%,InternetService = DSL 流失率为18.96%,InternetService = No 的流失率为7.4%。
    相比较开通DSL能更好的降低流失率

    签订的合约信息对用户流失的影响

    #签订合同方式 与 客户流失率的 影响
    plt.figure(figsize=(10,8))
    sns.barplot(x='Contract',y='Churn',data=data,palette='pastel',)
    plt.title('Contract',size=15)
    

    在这里插入图片描述
    由图可知:签订的合同时间越长,流失率越低。

    # 付款方式对客户流失率的影响
    plt.figure(figsize=(10,8))
    sns.barplot(x='PaymentMethod',y='Churn',data=data,palette='Set2')
    plt.title('PaymentMethod',size=15)
    

    在这里插入图片描述
    由图可知:在四中支付方式中,使用Electronic check的用户流失率最高

    #PaperlessBilling
    PaperlessBilling = data[['PaperlessBilling','Churn']]
    PaperlessBilling['Churn'] = PaperlessBilling['Churn'].map({'Yes':1,'No':0})
    plt.figure(figsize=(10,8))
    sns.barplot(x='PaperlessBilling',y='Churn',data=PaperlessBilling,palette='pastel',)
    plt.title('PaperlessBilling',size=15)
    

    在这里插入图片描述
    由上图可知:使用PaperlessBilling的客户流失率较高,因为使用PaperlessBilling的客户大多数为月付费用户,所以推测可能是按月付费对用户的流失影响比较大

    费用对流失情况的影响

    #TotalCharges 总费用
    plt.figure(figsize=(16,4))
    plt.subplot(1,2,1)
    plt.hist(data[data.Churn=='Yes']['TotalCharges'],bins=500)
    plt.title('Churn = Yes')
    plt.subplot(1,2,2)
    plt.hist(data[data.Churn=='No']['TotalCharges'],bins=500)
    plt.title('Churn = No')
    plt.show()
    

    在这里插入图片描述

    # MonthlyCharges 月费用
    plt.figure(figsize=(16,4))
    plt.subplot(1,2,1)
    plt.hist(data[data.Churn=='Yes']['MonthlyCharges'],bins=500)
    plt.title('Churn = Yes')
    plt.xticks(range(0,130,10))
    
    plt.subplot(1,2,2)
    plt.hist(data[data.Churn=='No']['MonthlyCharges'],bins=500)
    plt.title('Churn = No')
    
    plt.xticks(range(0,130,10))
    plt.show()
    

    在这里插入图片描述
    通过对费用的分析可知:
    总费用:客户的流失趋势是随着付费的总费用越多而流失率越低,客户就越稳定。
    月付费:每月的费用越高客户的流失率就越高,主要集中在每月费用70-105之间流失率较高

    用户画像分析与建议

    用户画像
    通过以上的分析,可以发现容易流失的客户的用户画像为:
    在这里插入图片描述

    建议

    • 对老年人,未婚,经济为独立的客户推出亲情套餐等优惠活动。
    • 对于入网时间短(2月之内)的用户推出半年或一年的优惠活动,使客户从易流失时期过渡到相对稳定时期。
    • 开通网络相关服务能够提高客户的留存,可以对相关服务加强宣传推广力度
    • 对一直都按月付费的用户推出年付费的优惠活动
    • 对使用电子支票和PaperlessBilling的客户,推出使用其他支付方式的优惠活动,或者通过消息推送等提醒其使用其他更便捷的支付方式
    • 对每月付费在70-105区间的用户,推出一定的折扣或其他优惠活动
    展开全文
  • 电信客户流失分析

    千次阅读 2020-06-03 21:42:41
    电信客户流失分析 无论在哪个行业,客户都是其重要分析对象之一。这里,以电信行业的用户流失分析为例,从数据的角度对其用户进行分析。 一: 数据获取及其可靠性检验 数据分析一定离不开数据,本数据集来自DF ,...
              电信客户流失分析
    

    无论在哪个行业,客户都是其重要分析对象之一。这里,以电信行业的用户流失分析为例,从数据的角度对其用户进行分析。
    一: 数据获取及其可靠性检验
    数据分析一定离不开数据,本数据集来自DF ,数据源地址为:
    https://www.datafountain.cn/dataSets/35/details#
    在这里我们先不考虑数据集来源的可靠性或者数据集的准确性。
    当然,如果你对数据集不放心,在这里我们对用户流失与否的数量占比进行分析(一般而言都是流失客户要远远小于不流失客户,因为那样才能更好的盈利):其代码及结果如下:df1=df["Churn"].value_counts() labels=df["Churn"].value_counts().index import matplotlib.pyplot as plt plt.rcParams["font.sans-serif"]="SimHei" plt.rcParams["axes.unicode_minus"]=False plt.figure(figsize=(6,6)) plt.pie(df1,labels=labels,colors=["blue","yellow"],explode=(0.1,0), autopct="%2.2f%%", shadow=True) plt.title("客户是否流失占比") plt.show()在这里插入图片描述
    上述饼图中,Yes表示流失的客户这一类,No表示没有流失的客户这一类,从上图中我们可知流失客户与没有流失的客户占比约为1:3,这与我们预期的比较相符。
    二:数据预览
    在获取数据后,下一步就是对数据进行一个预览(或者说是对数据进行一个初步的熟悉)
    下载并打开上述数据数据文件发现它有总共有21个字段信息,其中customerID字段相当于用户信息的一个编码号,可以上去,Churn字段为目标变量(即用户是否流失),其与19字段为特征变量,即我们需要进行分析的维度。其代码如下:
    import pandas as pd df=pd.read_csv(r"C:\Users\Administrator\Desktop\电信用户流失数据.csv", engine="python")
    数据预览的另一重要内容就是查看数据类型及其查看是否存在缺失值。代码如下:df3.info()
    在数据预览过后,我们发现不存在缺失值,并且许多特征维度的数据类型均为python默认的object对象类型。
    三:数据分析-之维度分析
    (1)频数统计对比法:
    由于我们在数据预览时没有发现缺失值,因此可以直接在各个维度上进行分析,这里以性别、年龄、是否有配偶以及是否独立四个维度为例,代码及结果如下所示:
    plt.figure(figsize=(10,10)) plt.subplot(2,2,1) import seaborn as sns sns.countplot(x="gender",hue="Churn",data=df,palette="Pastel2") plt.xlabel("gender") plt.title("性别与客户流失间的关系") plt.subplot(2,2,2) sns.countplot(x="SeniorCitizen",hue="Churn",data=df,palette="Pastel2") plt.xlabel("SeniorCitizen") plt.title("年龄大小与客户流失间的关系") plt.subplot(2,2,3) sns.countplot(x="Partner",hue="Churn",data=df,palette="Pastel2") plt.xlabel("Partner") plt.title("配偶有无与客户流失间的关系") plt.subplot(2,2,4) sns.countplot(x="Dependents",hue="Churn",data=df,palette="Pastel2") plt.xlabel("Dependents") plt.title("亲属有无与客户流失间的关系")
    在这里插入图片描述
    从上图中,可知男女性别(左上图)在流失与不流失上数量上基本一致,因此性别对客户流失影响与否的影响不大;而年龄(右上图)和是否独立(右下图)对客户流失影响较大。
    当然,考察各维度指标对目标变量影响程度的方法,除了运用上述的频数统计对比法外,还有一种重要的方法-相关系数法。
    (2)相关系数法:
    由于相关系数法是对各数值型变量,但发现有些数据类型不对,如MonthlyCharges 字段的数据类型应为数值型,但Python默认为objiect对象类型,因此需要将其转换为数值类型,为了以后得分析方便,这里也将其它字段的类型转换为数值型。代码与结果如下:df2=df.iloc[:,1:20] df3=df2.apply(lambda x:pd.factorize(x)[0])#将数字类型都转换为整型,来求相关系数 df3.head() df3.info() corr=df3.corr() corr df["TotalCharges"]=df["TotalCharges"].convert_objects(convert_numeric=True) #因为python会默认为Object类型,此方法将原本是数值型数据转换回来,但不是所有的都可以 #转为数值型,不能转化的用nan代替 df.dropna(inplace=True)#去掉其中的空值 df["Churn"].replace("Yes",1,inplace=True) df["Churn"].replace("No",0, inplace=True)#转化为数字,因为one-hot编码不会对数值 #进行编码 df4=pd.get_dummies(df.iloc[:,1:21]) df4.head() plt.figure(figsize=(15,8)) df4.corr()["Churn"].sort_values(ascending=False).plot(kind="bar") plt.title("相关图")
    在这里插入图片描述从上图中性别因素(男与女)处在最中间的位置标明相关系数的绝对取值较低,即对目标变量(客户是否流失)的影响最小,这与第一种频数统计法的结果一样。当然还有一些影响较小的其它指标也可去除,如PhoneService等。
    结论与建议
    (1)结论
    通过上述分析,我们可以大致勾勒出容易流失的用户特征:
    1:老年用户与未婚且经济未独立的青少年用户更容易流失。
    2:电话服务对用户的流失没有直接的影响。
    :3:提供的各项网络服务项目能够降低用户的流失率。
    4:签订合同越久,用户的留存率越高。:
    5:采用electronic check支付的用户更易流失。
    (2)建议:
    推荐老年用户与青少年用户采用数字网络,且签订2年期合同(可以各种辅助优惠等营销手段来提高2年期合同的签订率),若能开通相关网络服务可增加用户粘性,因此可增加这块业务的推广,同时考虑改善电子账单支付的用户体验。
    五:总结## 标题
    这里只是对电信用户流失的影响因素进行了初步分析,若要进一步分析,可建立预测模型。
    注****在进行建模分析时需要注意一下几点:
    1:在选取模型时,还要对数据进行其他的处理,如标准化等;
    2::由于此案列的数据集包含的特征维度较多,所以在选取一些模型时,要考虑维度灾难,并且各特征变量间的相关性是否对选取的模型有影响
    3:由于此案列的数据集是不平衡的二分类数据集,所以在选取分类模型时要考虑数据不平衡对模型的影响(不平衡数据集对模型的主要影响是其中的噪声数据,而不是类别在数量上的不平衡造成的)

    展开全文
  • 用户流失预测分析

    千次阅读 2021-01-03 16:51:08
    为了更好运营用户,这就要求要了解流失用户的特征,分析流失原因,预测用户流失,确定挽留目标用户并制定有效方案。 2.明确分析问题 分析用户特征与流失的关系。 从整体情况看,流失用户普遍具有哪些特征? 尝试...

    1.项目背景

    客户流失是所有与消费者挂钩行业都会关注的点。因为发展一个新客户是需要一定成本的,一旦客户流失,除了浪费拉新成本,还需要花费更多的用户召回成本。
    所以,电信行业在竞争日益激烈当下,如何挽留更多用户成为一项关键业务指标。为了更好运营用户,这就要求要了解流失用户的特征,分析流失原因,预测用户流失,确定挽留目标用户并制定有效方案。

    2.明确分析问题

    1. 分析用户特征与流失的关系。
    2. 从整体情况看,流失用户普遍具有哪些特征?
    3. 尝试找到合适的模型预测流失用户。
    4. 针对性给出增加用户黏性、预防流失的建议。

    3.数据理解

    本数据集来源Kaggle上公开的某电信公司的用户数据,共包含7043条数据,共21个字段。

    在这里插入图片描述

    4.数据清洗

    数据清洗的“完全合一”规则:

    • 完整性:单条数据是否存在空值,统计的字段是否完善。
    • 全面性:观察某一列的全部数值,通过常识来判断该列是否有问题,比如:数据定义、单位标识、数据本身。
    • 合法性:数据的类型、内容、大小的合法性。比如数据中是否存在非ASCII字符,性别存在了未知,年龄超过了150等。
    • 唯一性:数据是否存在重复记录,因为数据通常来自不同渠道的汇总,重复的情况是常见的。行数据、列数据都需要是唯一的。

    4.1数据导入

    # 导入数据分析需要的包
    import pandas as pd
    import numpy as np
    # 可视化包
    import seaborn as sns
    sns.set(style="whitegrid")
    import matplotlib.pyplot as plt
    %matplotlib inline
    # 忽略警告信息
    import warnings
    warnings.filterwarnings('ignore')
    # 显示中文
    plt.rcParams["font.sans-serif"] = ["SimHei"]
    plt.rcParams["axes.unicode_minus"] = False
    # 导入数据集
    df=pd.read_csv('./WA_Fn-UseC_-Telco-Customer-Churn.csv')
    # 查看数据
    df.head(5)
    

    4.2查看数据类型

    df.info()
    

    在这里插入图片描述

    MonthlyCharges和TotalCharges都为费用,类型都应该为数值,
    但通过查看发现TotalCharges为object对象类型,需要转化数值类型。

    #强制转换数字(包括字符串)
    df['TotalCharges']=df['TotalCharges'].apply(pd.to_numeric,errors='coerce')
    #df['TotalCharges'] = df['TotalCharges'].convert_objects(convert_numeric=True)
    df['TotalCharges'].dtypes
    # 输出结果
    dtype('float64')
    
    # convert_numeric=True 表示强制转换数字(包括字符串),不可转换的值Nan
    df['MonthlyCharges']=df['MonthlyCharges'].convert_objects(convert_numeric=True)                                                     
    df['MonthlyCharges'].dtypes
    # 输出结果
    dtype('float64')
    

    4.3缺失值处理

    # 查看缺失值
    df.isnull().sum()
    

    在这里插入图片描述

    # 定位缺失值所在行,查看具体情况
    df[df['TotalCharges']!=df['TotalCharges']][['tenure','MonthlyCharges','TotalCharges']]
    

    在这里插入图片描述
    分析:
    发现这11个用户tenure(入网时常)为0,推测是当月新入网用户。
    根据一般经验,用户即使在注册的当月流失,也需缴纳当月费用。
    因此将这11个用户入网时长改为1,将总消费额填充为月消费额,符合实际情况。

    • 将总消费额填充为月消费额
    #将总消费额填充为月消费额
    df.loc[:,'TotalCharges'].replace(np.nan,df.loc[:,'MonthlyCharges'],inplace=True)
    #查看是否替换成功
    df[df['tenure']==0][['tenure','MonthlyCharges','TotalCharges']]
    

    在这里插入图片描述

    • 将‘tenure’入网时长从0修改为1
    # 将‘tenure’入网时长从0修改为1
    df.loc[:,'tenure'].replace(to_replace=0,value=1,inplace=True)
    

    4.4数据归一化处理

    对Churn 列中的值 Yes和 No分别用 1和 0替换,方便后续处理

    df['Churn'].replace( 'Yes', 1,inplace = True)
    df['Churn'].replace( 'No',  0,inplace = True)
    df['Churn'].head()
    
    # 保存数据集
    df.to_csv('./Telecom_customer churn1.csv')
    

    5.流失用户特征分析

    根据用户主要特征。将用户属性分为三类,用户属性、服务属性及合同属性
    在这里插入图片描述

    • 查看客户总体流失情况
    # 查看总体客户流失情况
    churnvalue = df["Churn"].value_counts()
    labels = df["Churn"].value_counts().index
    plt.pie(churnvalue,
            labels=["未流失","流失"],
            explode=(0.1,0),
            autopct='%.2f%%', 
            shadow=True,)
    plt.title("客户流失率比例",size=24)
    plt.show()
    

    在这里插入图片描述
    分析:
    从饼形图中看出,流失客户占总客户数的四分之一比例,流失率达26.54%

    5.1用户属性分析

    fig, axes = plt.subplots(2, 2, figsize=(12,12))
    plt.subplot(2,2,1) 
    # palette参数表示设置颜色
    gender=sns.countplot(x='gender',hue="Churn",data=df,palette="Pastel2") 
    plt.xlabel("性别",fontsize=16)
    plt.ylabel('count',fontsize=16)
    plt.tick_params(labelsize=12)     # 设置坐标轴字体大小
    plt.title("Churn by Gender",fontsize=18)
    
    plt.subplot(2,2,2)
    seniorcitizen=sns.countplot(x="SeniorCitizen",hue="Churn",data=df,palette="Pastel2")
    plt.xlabel("年龄(0代表是年轻人,1代表是老年人)")
    plt.title("Churn by Senior Citizen",fontsize=18)
    plt.ylabel('count',fontsize=16)
    plt.tick_params(labelsize=12)   # 设置坐标轴字体大小
    
    plt.subplot(2,2,3)
    partner=sns.countplot(x="Partner",hue="Churn",data=df,palette="Pastel2")
    plt.xlabel("婚姻状态(yes代表已婚,no代表未婚)")
    plt.title("Churn by Partner",fontsize=18)
    plt.ylabel('count',fontsize=16)
    plt.tick_params(labelsize=12)   # 设置坐标轴字体大小
    
    plt.subplot(2,2,4)
    dependents=sns.countplot(x="Dependents",hue="Churn",data=df,palette="Pastel2")
    plt.xlabel("经济能力(yes代表经济独立,no代表未独立)")
    plt.title("Churn by Dependents",fontsize=18)
    plt.ylabel('count',fontsize=16)
    plt.tick_params(labelsize=12)   # 设置坐标轴字体大小
    plt.tight_layout()
    plt.show()
    

    在这里插入图片描述
    分析:

    • 用户流失与性别基本无关,差异性较小;

    • 年老客户用户量相对较少,但流失率较高;

    • 未婚用户流失率高于已婚用户;

    • 经济能力未独立的用户流失率高于经济能力独立用户

    5.2服务属性

    查看网络安全服务、在线备份业务、设备保护业务、技术支持服务、
    网络电视、网络电影和无互联网服务对客户流失率的影响。

    covariables=["OnlineSecurity", "OnlineBackup", "DeviceProtection", "TechSupport", "StreamingTV", "StreamingMovies"]
    fig,axes=plt.subplots(2,3,figsize=(20,12))
    for i, item in enumerate(covariables):
        '''
        0,'OnlineSecurit'
        1,'OnlineBackup'
        '''
        plt.subplot(2,3,(i+1))
        ax=sns.countplot(x=item,hue="Churn",data=df,palette="Set2",order=["Yes","No","No internet service"])
        plt.xlabel(str(item),fontsize=16)
        plt.tick_params(labelsize=14)     # 设置坐标轴字体大小
        plt.title("Churn by "+ str(item),fontsize=20)
        i=i+1
    plt.tight_layout()
    plt.show()
    

    在这里插入图片描述
    分析:
    在这六个服务属性中,开通相关服务的用户流失率较低,
    说明有这些方面需求的客户对此服务还比较满意,客户群体也比较稳定。
    No internetserive这部分客户群体流失率基本相同,且相对较低。

    5.3合同属性

    • 查看合同签订方式对用户流失的影响
    fig = plt.figure(figsize=(12,8))
    sns.barplot(x="Contract",
                y="Churn", 
                data=df, 
                palette="Pastel1", 
                order= ['Month-to-month', 
                        'One year', 'Two year'])
    plt.title("Churn by Contract type",fontsize=20)
    plt.xlabel('Contract',fontsize=16)
    plt.ylabel('Churn',fontsize=16)
    plt.tick_params(labelsize=13)     # 设置坐标轴字体大小
    plt.show()
    

    在这里插入图片描述
    分析:
    从柱状图中看出,合同期限越长,流失率越低,一部分原因是选择长期合同的客户原本就比较稳定,
    另外一个原因是长期合同具有长期约束率,在客户签订合同时,可以针对一次签订长期合同的客户进行优惠促销。

    • 查看付款方式对用户流失率的影响
    plt.figure(figsize=(12,8))
    sns.barplot(x="PaymentMethod",y="Churn", data=df, palette="Pastel1", order= ['Bank transfer (automatic)', 'Credit card (automatic)', 'Electronic check','Mailed check'])
    plt.title("Churn by PaymentMethod type",fontsize=20)
    plt.xlabel('PaymentMethod',fontsize=16)
    plt.ylabel('Churn',fontsize=16)
    plt.tick_params(labelsize=13)     # 设置坐标轴字体大小
    plt.show()
    

    在这里插入图片描述
    分析:
    在四种支付方式中,使用Electronic check的用户流失率最高,其他三种支付方式基本持平,因此可以推断电子账单在设计上影响用户体验。

    • 查看正常用户与流失用户在月消费金额上的差别
    plt.figure(figsize=(10,6))
    g = sns.FacetGrid(data = df,hue = 'Churn', height=4, aspect=3)
    g.map(sns.distplot,'MonthlyCharges',norm_hist=True)
    g.add_legend()
    plt.ylabel('density',fontsize=16)
    plt.xlabel('MonthlyCharges',fontsize=16)
    plt.tick_params(labelsize=13)     # 设置坐标轴字体大小
    plt.tight_layout()
    plt.show()
    

    在这里插入图片描述
    分析:
    从上图看出,月消费额大约在70-110这个区间内的用户流失率相对较高。

    • 查看正常用户与流失用户在总消费金额上的差别
    g = sns.FacetGrid(data = df,hue = 'Churn', height=4, aspect=3)
    g.map(sns.distplot,'TotalCharges',norm_hist=True)
    g.add_legend()
    plt.ylabel('density',fontsize=16)
    plt.xlabel('TotalCharges',fontsize=16)
    plt.tick_params(labelsize=13)     # 设置坐标轴字体大小
    plt.show()
    

    在这里插入图片描述
    分析:
    从上图看出,总消费金额越多,客户流失率会相对较低,
    说明当客户对此产品形成一定消费习惯后,忠诚度会升高。

    6.用户流失预测

    对数据集进一步清洗和提取特征,通过特征选取对数据进行降维,采用机器学习模型应用于测试数据集,
    然后对构建的分类模型准确性进行分析。

    7 数据预处理

    #导入数据分析需要的包
    import pandas as pd
    import numpy as np
    #可视化包
    import seaborn as sns
    sns.set(style="whitegrid")
    import matplotlib.pyplot as plt
    %matplotlib inline
    #忽略警告信息
    import warnings
    warnings.filterwarnings('ignore')
    plt.rcParams["font.sans-serif"] = ["SimHei"]
    plt.rcParams["axes.unicode_minus"] = False
    #导入数据集
    df = pd.read_csv('./Telecom_customer churn1.csv')
    
    # CustomerID表示每个客户的标识,对后续建模不影响,这里选择删除CustomerID列
    customerID=df['customerID']
    df.drop("customerID",axis=1, inplace=True)
    df.drop('Unnamed: 0',axis=1,inplace=True)
    df.head() 
    

    7.1 特征编码

    特征主要分为连续特征和离散特征,其中离散特征根据特征之间是否有大小关系又细分为两类。

    • 连续特征:“tenure”、“MonthlyCharges”、“TotalCharges”,一般采用归一标准化方式处理。
    • 离散特征:特征之间没有大小关系,如:PaymentMethod:[bank transfer,credit card,electronic check,mailed check],付费方式之间没有大小关系,一般采用one-hot编码。
    • 离散特征:特征之间有大小关联,则采用数值映射。本数据集无此类特征。

    7.1.1 连续特征编码

    对tenure(在网时长),MonthlyCharges(月费用),TotalCharges(总费用)三个连续特征进行标准化处理,
    使特征数据标准为1,均值为0,符合标准的正态分布,降低数值特征过大对预测结果的影响。

    from sklearn.preprocessing import StandardScaler  
    # 实例化一个转换器类
    scaler = StandardScaler(copy=False)
    # 调用fit_transform,其作用是先拟合数据,然后转化它将其转化为标准形式
    scaler.fit_transform(df[['tenure','MonthlyCharges','TotalCharges']])
    #利用transform函数实现标准化,作用是通过找中心和缩放等实现标准化
    df[['tenure','MonthlyCharges','TotalCharges']]=scaler.transform(df[['tenure','MonthlyCharges','TotalCharges']])
    df[['tenure','MonthlyCharges','TotalCharges']].head()
    

    在这里插入图片描述

    7.1.2 离散特征编码

    # 查看对象类型字段中存在的值
    def uni(columnlabel):
        # unique函数去除其中重复的元素,返回唯一值
        print(columnlabel,"--" ,df[columnlabel].unique())
        
    dfobject=df.select_dtypes(['object'])
    for i in range(0,len(dfobject.columns)):
        uni(dfobject.columns[i])
    

    在这里插入图片描述
    结合服务属性,发现No internet service(无互联网服务)对客户流失率影响很小,
    这些客户不使用任何互联网产品,因此可以将No internet service 和 No 是一样的效果,
    可以使用 No 替代 No internet service

    df.replace(to_replace='No internet service', value='No', inplace=True)
    df.replace(to_replace='No phone service', value='No', inplace=True)
    #再次查看
    for i in range(0,len(dfobject.columns)):
        uni(dfobject.columns[i])
    

    在这里插入图片描述

    7.1.3 使用Scikit-learn标签编码,将离散特征转换为整数编码

    # 编码转换
    from sklearn.preprocessing import LabelEncoder  
    def labelencode(columnlabel):
        df[columnlabel] = LabelEncoder().fit_transform(df[columnlabel])
        
    for i in range(0,len(dfobject.columns)):
        labelencode(dfobject.columns[i])
        
    for i in range(0,len(dfobject.columns)):
        uni(dfobject.columns[i])
    

    在这里插入图片描述

    7.2 数据相关性分析

    电信用户是否流失与各变量之间的相关性

    plt.figure(figsize=(16,8))
    df.corr()['Churn'].sort_values(ascending = False).plot(kind='bar')
    plt.tick_params(labelsize=14)     # 设置坐标轴字体大小
    plt.xticks(rotation=45)         # 设置x轴文字转向
    plt.title("Correlations between Churn and variables",fontsize=20)
    plt.show()
    

    在这里插入图片描述
    分析:
    从上图可以直观看出,PhoneService 、gender这两个变量与churn目标变量相关性最弱。

    7.3 特征选取

    特征值选取时,去除相关性较弱的PhoneService 、gender两个变量。这里目标变量是churn。

    # 特征选取
    dropFea = ['gender','PhoneService']
    df.drop(dropFea, inplace=True, axis =1)
    # 深拷贝
    X=df.copy()
    X.drop(['Churn'],axis=1, inplace=True)
    y=df["Churn"]
    #查看预处理后的数据
    X.head()
    

    8 构建模型

    8.1 建立训练数据集和测试数据集

    from sklearn.model_selection import train_test_split
    X_train, X_test, y_train, y_test = train_test_split(X,y,test_size = 0.3, random_state = 0)
    print("原始训练集包含样本数量: ", len(X_train))
    print("原始测试集包含样本数量:  ", len(X_test))
    print("原始样本总数: ", len(X_train)+len(X_test))
    
    #输出结果
    原始训练集包含样本数量:  4930
    原始测试集包含样本数量:   2113
    原始样本总数:  7043
    

    8.2 构建多个分类器

    from sklearn.ensemble import RandomForestClassifier          # 随机森林
    from sklearn.svm import SVC, LinearSVC                       # 支持向量机
    from sklearn.linear_model import LogisticRegression          # 逻辑回归
    from sklearn.neighbors import KNeighborsClassifier           # KNN算法
    from sklearn.naive_bayes import GaussianNB                   # 朴素贝叶斯
    from sklearn.tree import DecisionTreeClassifier              # 决策树分类器
    from xgboost import XGBClassifier
    from sklearn.ensemble import AdaBoostClassifier
    from sklearn.ensemble import GradientBoostingClassifier   
    
    from sklearn.metrics import precision_score, recall_score, f1_score
    from sklearn.metrics import confusion_matrix
    from sklearn.model_selection import GridSearchCV  # 网格搜索
    
    # 使用分类算法
    Classifiers=[
                ["Random Forest",RandomForestClassifier()],
                ["Support Vector Machine",SVC()],
                ["LogisticRegression",LogisticRegression()],
                ["KNN",KNeighborsClassifier(n_neighbors=5)],
                ["Naive Bayes",GaussianNB()],
                ["Decision Tree",DecisionTreeClassifier()],
                ["AdaBoostClassifier", AdaBoostClassifier()],
                ["GradientBoostingClassifier", GradientBoostingClassifier()],
                ["XGB", XGBClassifier()]
     
    ]
    

    8.3 训练模型

    Classify_result=[]
    names=[]
    prediction=[]
    for name,classifier in Classifiers:
        classifier=classifier
        classifier.fit(X_train,y_train)
        y_pred=classifier.predict(X_test)
        recall=recall_score(y_test,y_pred)
        precision=precision_score(y_test,y_pred)
        f1score = f1_score(y_test, y_pred)
        class_eva=pd.DataFrame([recall,precision,f1score])
        Classify_result.append(class_eva)
        name=pd.Series(name)
        names.append(name)
        y_pred=pd.Series(y_pred)
        prediction.append(y_pred)
    

    8.4 评估模型

    召回率(recall)的含义是:原本为对的当中,预测为对的比例(值越大越好,1为理想状态)
    精确率、精度(precision)的含义是:预测为对的当中,原本为对的比例(值越大越好,1为理想状态)
    F1分数(F1-Score)指标综合了Precision与Recall的产出的结果
    F1-Score的取值范围从0到1的,1代表模型的输出最好,0代表模型的输出结果最差。

    classifier_names=pd.DataFrame(names)
    # 转成列表
    classifier_names=classifier_names[0].tolist()
    result=pd.concat(Classify_result,axis=1)
    result.columns=classifier_names
    result.index=["recall","precision","f1score"]
    result
    

    在这里插入图片描述

    8.5 实施方案

    由于没有预测数据集,选择最后10条数为例进行预测。

    # 提取customerID
    pred_id = customerID.tail(10)
    # 提取预测数据集特征(如果有预测数据集,可以一并进行数据清洗和特征提取)
    pred_x = X.tail(10)
    
    # 使用上述得到的最优模型
    model = LogisticRegression	()
    model.fit(X_train,y_train)
    pred_y = model.predict(pred_x) # 预测值
    
    # 预测结果
    predDf = pd.DataFrame({'customerID':pred_id, 'Churn':pred_y})
    print(predDf)
    

    在这里插入图片描述

    9 结论和建议

    流失用户特征:

    • 用户属性:老年用户,未婚用户、经济未独立的用户更容易流失;

    • 服务属性:未开通相关附加增值服务的用户更容易流失;

    • 合同属性:签订的合同期较短,电子账单支付、月租费约70-110元的客户容易流失。

    建议:
    根据预测模型,构建一个高流失率的用户列表。通过用户调研推出一个最小可行化产品功能,并邀请种子用户进行试用。

    • 用户属性:针对老年用户、无亲属、无伴侣用户的特征退出定制服务如亲属套餐、温暖套餐等,一方面加强与其它用户关联度,另一方对特定用户提供个性化服务;

    • 服务属性:针对新入网用户,可以在购买时赠送增值服务体验资格,增强用户对增值服务的认知度;对存量老用户,可以根据用户行为特征,对于有购买这部分服务潜在用户,进行重点宣传推广,促使用户进一步购买,加强用户对产品的黏性;

    • 合同属性:针对单月合同用户,建议推出年合同付费折扣活动,将月合同用户转化为年合同用户,提高用户在网时长,以达到更高的用户留存。 针对采用电子支票支付用户,建议定向推送其它支付方式的优惠券,引导用户改变支付方式。

    展开全文
  • 客户流失预测 —— 资源汇总

    千次阅读 2020-07-02 20:37:29
    Table of Contents 0. 题目简介 1. 资源收集和整理 2. 相关学习资料 2.1 相似比赛思路 2.2 数据处理+特征工程 ...3.2 《[机器学习实战]使用 scikit-learn 预测用户...3.4 《LogisticRegression用户流失预测模型初探
  • 客户流失项目 使用电信客户流失数据确定功能重要性 杰夫·斯帕格诺拉 笔记: 该自述文件正在进行中,将很快完成。 介绍 客户流失是任何业务的主要关注点。 在当今世界,客户比以往任何时候都更加了解信息,并且...
  • 航空公司客户流失分析
  • 针对电信企业客户流失问题,提出采用贝叶斯决策树算法的预测模型,将贝叶斯分类的先验信息方法与决策树分类的信息熵增益方法相结合,应用到电信行业客户流失分析中,分别将移动公司的客户数据以及UCI数据纳入到模型...
  • 网络游戏-数据信息通信网络中实现用户流失预测的系统及方法.zip
  • 航空公司客户流失分析

    千次阅读 2019-07-27 09:47:01
    背景与分析方法 本文是接着航空公司客户价值分析,这是拓展思考的部分,这里简单的将它做了一下。在客户管理中,客户流失也是一个十分重要的问题。客户流失对利润增长造成的负面...用航空公司客户信息数据来进行...
  • 报告同时超过复杂性得分和流失计数值的文件。 安装 gem install seethe 用法 Seethe期望从您的项目目录内部运行,该目录必须是git存储库。 cd seethe 您也可以指定项目的子目录,并覆盖默认的复杂性得分/客户...
  • 实验结果表明,欠抽样法是在牺牲负类样本预测精度的前提下,提高正类预测精度,于是采用重复抽样法(resampling)来弥补欠抽样法的缺陷,减少负类样本中含有大量有用信息的丢失,实验结果证明了这种方法的正确性和有效...
  • 机器学习 客户流失Building up and keeping a loyal clientele can be challenging for any company, especially when customers are free to choose from a variety of providers within a product category....
  • 总体流失率分析3.2.用户属性分析3.3.服务属性分析3.4.合同属性分析4.高流失率用户画像5.结论和建议 1.数据集说明 每一行代表一个客户,每一列包含列元数据中描述的客户属性。原始数据包含7043行(客户)和21列(特性)。...
  • 通过客户流失预测案例感悟数据分析设计方法,正如Gartner于2020年给出数据分析领域的技术趋势,更智能、更高速、更负责的AI,凸显新技术引领业务,数据驱动、AI驱动,以站在高纬度上的预测结果为顶层设计,倒逼数据...
  • 客户流失预警模型怎么做? 贷中策略除了跟调额、营销相关外,与客户流失相关及营销相关的还有一个客户流失预测模型,是我们全流程中必不可少的一个客群分析。 目前,银行都面临着极大的优质客户流失的危险。这将对...
  • 搭建流失预警模型

    千次阅读 2019-01-27 20:45:06
    搭建流失预警模型 2018年10月12日 14:43 如何支持用户运营,搭建流失预警模型 2018-06-09 19:16微博/微信 有一个比喻非常恰当:产品如同蓄水池,用户好比池中之水。池子中每时每刻都有新用户源源不断地加入,也...
  • 电信用户流失数据分析及总结

    千次阅读 2021-03-30 16:59:45
    本项目主要对某电信服务商的用户基础数据进行分析以及预测,探索对用户流失有深刻影响的相关指标,帮助服务商制定有针对性的用户挽留计划,提高用户留存率。 二、技术工具 本项目以jupyter notebook为平台,以Python...
  • 银行客户流失分析

    千次阅读 多人点赞 2019-07-22 09:12:51
    随着互联网金融的异军突起,银行业的竞争愈加激烈,防止客户流失和挽留老客户成为各大银行关心的重要问题。本文首先根据已有数据集对各特征进行描述性统计分析,初步了解数据;之后进行数据预处理,包括数据清洗,...
  • 电信客户流失数据分析

    千次阅读 2020-08-21 14:24:32
    这里写自定义目录标题电信客户流失数据分析研究背景提出问题数据集描述特征工程1、数据预处理1.1、特征类型处理1.2、缺失值处理1.3、异常值处理1.4、分类变量标签整理2、特征选择2.1、方差过滤2.2、卡方检验过滤2.3...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 35,155
精华内容 14,062
关键字:

信息流失