当前位置:   article > 正文

python之航空公司客户价值分析 (三)_借助航空公司客户数据,使用python代码对客户进行分类,分为五类

借助航空公司客户数据,使用python代码对客户进行分类,分为五类

python之航空公司客户价值分析 (三)

模型构建

客户价值分析模型构建主要分成两个部分:

  1. 根据航空公司客户数据据的5个指标数据,对客户进行聚类分群
  2. 结合业务对每个客户群进行特征分析,分析客户价值,并对每个客户群进行排名

客户聚类

采用K-means聚类算法对客户数据进行客户分群,聚成5类(需要结合业务的理解与分析来确定客户类别数量)。

import pandas as pd
from sklearn.cluster import KMeans
import numpy as np
import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['font.family']='sans-serif'
#解决负号'-'显示为方块的问题
plt.rcParams['axes.unicode_minus'] = False

file_path = 'C:\\Users\\yangyukuan\\Desktop\\z2.csv'
cleaned_file = 'C:\\Users\\yangyukuan\\Desktop\\z3.csv'

def main():
	data = pd.read_csv(file_path,encoding='utf-8')
	#调用聚类算法
	kmodel = KMeans(n_clusters = 5,n_jobs = 4) #n_jobs是并行数,一般等于CPU数较好
	kmodel.fit(data)

	labels = data.columns #标签
	k = 5 #数据个数
	plot_data = kmodel.cluster_centers_
	color = ['b', 'g', 'r', 'c', 'y'] #指定颜色

	angles = np.linspace(0, 2*np.pi, k, endpoint=False)
	plot_data = np.concatenate((plot_data, plot_data[:,[0]]), axis=1) # 闭合
	angles = np.concatenate((angles, [angles[0]])) # 闭合

	fig = plt.figure()
	ax = fig.add_subplot(111, polar=True) #polar参数!!
	for i in range(len(plot_data)):
		ax.plot(angles, plot_data[i], 'o-', color = color[i], label = u'客户群'+str(i+1), linewidth=2)# 画线
	ax.set_rgrids(np.arange(0.01, 3.5, 0.5), np.arange(-1, 2.5, 0.5), fontproperties="SimHei")
	ax.set_thetagrids(angles * 180/np.pi, labels, fontproperties="SimHei")
	plt.legend(loc = 4)
	plt.show()
if __name__ == '__main__':
    main()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38

运行图:
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/779996
推荐阅读
相关标签
  

闽ICP备14008679号