airbnb客户聚类分群

Airbnb爱彼迎是全球民宿短租公寓预定平台,全球700万特色民宿、短租、酒店、公寓、客栈覆盖191个国家和地区短租民宿房源。它拥有广泛的用户出行场景数据,通过这些数据,锁定潜在的目标客群并制定相应的营销策略是Airbnb业务发展的基石。

要分析的问题:应用聚类方法来分析airbnb用户群体的核心特征。

数据表的主要字段:
id:用户id
date_account_created:用户创建日期
date_first_booking:第一次订房日期
gender:性别
age:年龄
married:已婚
children:小孩数量
android:曾自爱安卓app中预定
mowed:曾在手机移动网页预定
wed:曾在电脑网页版预定
ios:曾在ios app预定
language_en:使用英文语言
language_zh:使用中文语言
country_us:目的地是美国
country_eu:目的地是欧洲国家

打开python敲代码
首先导入基本的库和数据表,进行数据的初步了解和预处理。

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
get_ipython().run_line_magic('matplotlib', 'inline')df=pd.read_csv(r'airbnb.csv')
df.info()
#没有缺失值

df.head()

df.describe()

#age最小2,最大2014,不符合实际。
#保留18-80岁的客户群体
df=df[df['age']>=18]
df=df[df['age']<=80]df.age.describe()

#把date_account_created和date_first_booking从object格式转换成datetime格式
df['date_account_created']=pd.to_datetime(df['date_account_created'])
df['date_first_booking']=pd.to_datetime(df['date_first_booking'])
#提取年份,用2019-提取的年份得到注册的时间
df['year_since_account_created']=df['date_account_created'].apply(lambda x:2019-x.year)
#提取年份,用2019-提取的年份得到距离第一次下单的时间
df['year_since_first_booking']=df['date_first_booking'].apply(lambda x:2019-x.year)
df.year_since_first_booking.describe()
df.year_since_account_created.describe()

用户注册时间最短是5年,最长是9年。
距离第一次下单的时间最短是4年,最长是9年。

#性别gender是唯一的类别型变量,进行哑变量处理
df=pd.get_dummies(df)
df.info()

#删除不需要的变量
df.drop(['date_account_created','date_first_booking'],axis=1,inplace=True)

数据预处理完成,然后建立聚类模型

#选择5个关键变量进行建模
df_5=df[['age','web','moweb','android','ios']]
#导入sklearn中预处理库scale的标准化函数preprocessing
from sklearn.preprocessing import scale
x=pd.DataFrame(scale(df_5))  #标准化df_5中的数据,并存进X变量
from sklearn import cluster
#先尝试分成3类,拟合模型
model=cluster.KMeans(n_clusters=3,random_state=10)
model.fit(x)

df_5['clusters']=model.labels_
df_5.head()

sns.scatterplot(x='age',y='ios',hue='clusters',data=df_5)
#ios变量只会有2个值,可视化效果不好

#用groupby()评估单变量维度分群效果
df_5.groupby(['clusters'])['age'].describe()


年龄区分度较弱,3类用户年龄都在18-80区间

df_5.groupby(['clusters'])['ios'].describe()


ios的区分度较好
0群和1群ios为0,2群ios为1
ios在群组中是一个很好的分群变量

然后对于建立的模型进行评分

#模型评估的过程,也是尽可能在组与所使用的变量之间达到一个尽可能的平衡
#评分标准是 silhouette coefficient#调用sklearn的metrics库
from sklearn import metrics
x_cluster=model.fit_predict(x)
score=metrics.silhouette_score(x,x_cluster)
#评分越高,个体与群越近;评分越低,个体与群越远print(score)

#导出评分表
centers.to_csv('center_3.csv')
#center_3.csv表格
#行:每一行是系统认为的群组
#列:重点关注每一列的数据,找绝对值较大的数字,结合业务理解给与判断

airbnb客户聚类分群python实战相关推荐

  1. 单细胞亚群降维聚类分群

    单细胞亚群降维聚类分群 大家好,这里是想做生信大恐龙

  2. 基于K-MEANS聚类的客户价值分群

    实验目的及要求: 学会以层次聚类.K-means聚类模型为代表的聚类分析模型的建模方法: 学会借助R软件进行基本的数据建模分析. 实验仪器: Windows10系统,R Studio软件等. 实验原理 ...

  3. 笔记︱多种常见聚类模型以及分群质量评估(聚类注意事项、使用技巧)

    聚类分析在客户细分中极为重要.有三类比较常见的聚类模型,K-mean聚类.层次(系统)聚类.最大期望EM算法.在聚类模型建立过程中,一个比较关键的问题是如何评价聚类结果如何,会用一些指标来评价. 在后 ...

  4. 数据挖掘中客户分群的应用

    通过前期对系统内部的数据挖掘进行客户分群,并打上了相关的客户标签,这些客户标签对后期有什么应用呢?目前在做一个电信数据挖掘项目过程中,发现了电信客户觉得客户标签对他们的电信产品有很大的作用,希望能够找 ...

  5. 航空公司客户价值分析python实战

    航空公司客户价值分析(K_Means聚类分析) 最近在看黄红梅.张良均老师主编的<Python数据分析与应用>,拿书里的案例练练手. 本案例将使用航空公司客户数据,结合RFM模型,采用K_ ...

  6. 用户增长分析——用户分群分析

    导语在产品的增长分析当中,想关注符合某些条件的一部分用户,不仅想知道这些人的整体行为(访问次数,访问时长等),还希望知道其中差异较大的细分群体.用户分群方法,能帮助我们对差异较大的群体分别进行深入分析 ...

  7. 用户增长体系——用户分群分析

    导语在产品的增长分析当中,想关注符合某些条件的一部分用户,不仅想知道这些人的整体行为(访问次数,访问时长等),还希望知道其中差异较大的细分群体.用户分群方法,能帮助我们对差异较大的群体分别进行深入分析 ...

  8. Cell Ranger 细胞分群及差异分析

    今天来点干货 说一说 Cell Ranger 细胞分群及差异分析 软件官网:https://www.10xgenomics.com/company 主要使用在10X单细胞测序 主要用途:10X单细胞测 ...

  9. 风控必学|肘部法与客户分群——客户画像中的聚类与特征画像分析

    客户聚类分析,在信贷圈子里,是一种很常见的数据挖掘场景,对于从事金融数据分析岗位的我们,也是需要必备掌握能力之一.无论是策略分析岗,还是数据建模岗,或者是数据分析岗,客户样本的分群画像,在某些程度上来 ...

最新文章

  1. Docker运行sonarqube-(代码质量检测平台)
  2. 处理Http请求Gzip格式响应
  3. 有返回值的多线程demo
  4. python format函数实例_python中强大的format函数实例详解
  5. 收藏 | 清华团队将Transformer用到3D点云分割
  6. java md5 16位解密_Java实现MD5(32/16位)大小写加密
  7. 《iOS网络编程与云端应用最佳实践》微博转发送书了!
  8. 开源远程访问服务器工具_为什么开源需要可访问性标准
  9. php 弹出指定窗口大小,弹出div或者弹出新窗口的固定位置、固定大小
  10. oracle导出大数据
  11. word里面给公式自动编号
  12. java 实验室预约系统_基于Java的实验室预约管理系统
  13. 谈谈 MVX 中的 Model
  14. Python文件(二):数据组织的维度,一维数据的表示、存储、处理
  15. ddgr:一个从终端搜索 DuckDuckGo 的命令行工具
  16. 乐嘉首档脱口秀《夜问》开播变身“犀利帝”
  17. MMO游戏设计一:角色行走
  18. python怎么使用数据库系统有什么好处_数据库简单介绍
  19. 企业级存储发展趋势谈:开源存储的冷思考
  20. JDK8 日期时间相关 java.time.*

热门文章

  1. Vmware vCenter Server Appliance (VCSA6.0)安装
  2. 玩不死你校内农场种地助手
  3. 关于局域网共享excel链接问题
  4. 【LoRa环境监测系统】
  5. 一个非常好的外包项目网站
  6. C语言:超详细的C语言中的数据类型
  7. 推荐 windows xp sp3 OEM+VOL 28合1
  8. oracle 查询表里信息_如何查看表的历史统计信息
  9. BUGKU MSIC 想蹭网先解开密码 wp
  10. 深圳学区房入学条件有哪些