数据分析项目-Airbnb业务数据分析

该博客介绍了对Airbnb用户数据的预处理和分群分析。首先进行了数据清洗,如年龄异常值处理,将日期转换为时间间隔,将性别变量转化为哑变量,并删除日期列。接着,利用KMeans进行用户分群,通过散点图展示分群结果,并对模型效果进行评估。最后,分析了不同群体在年龄、使用设备上的特征差异。

目录

第一部:导包和数据导入

1.数据清洗:

1.1年龄清洗

1.2类别型变量(日期)的调整

计算用户注册到2019年的时间

计算用户第一次预定到2019年的时间

1.3将性别型变量转化成哑变量(gender)

1.4删除2个日期变量,可以根据数据类型来进行drop

2.建立模型

3.模型评估与优化 


本例中将使用Airbnb的数据。Airbnb是一个旅行服务短期租赁的社区,它拥有广泛的用户出行场景数据,通过这些数据,锁定潜在的目标客群并制定相应的营销策略是Airbnb业务发展的基石。

第一部:导包和数据导入

#调包
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
%matplotlib inline
#数据导入
airbnb=pd.read_csv('w3_airbnb.csv')
airbnb.head()

字典数据及解释:

  • id:唯一的用户id
  • date_account_created:用户创建时间
  • date_first_booking:第一次订房日期
  • gender:性别
  • Age:年龄
  • Married:已婚
  • Children:小孩数量
  • Android:曾在安卓App中预定
  • Moweb:曾在手机移动网页中预定
  • web:曾在电脑网页版预定
  • ios:曾在iso app预定
  • Language_EN:使用英文语言
  • Language_ZH:使用中文语言
  • Country_US:目的地是美国
  • Country_EUR:目的地是欧洲国家

导入数据后,我们可以看到,数据中有两个日期,一个是用户注册日期,一个是订房日期,然后还有用户个人信息,渠道信息和基本的网页使用信息。这三类基本信息的分析即可以帮助我们分析人群的基本特征。

本案例中,我们依然遵循数据分析的基本流程,如下所示:

在使用info()和describe()函数查看数据之后,我们发现值得注意的点:

  • date_account_created和date_first_booking是时间变量,需要做调整
  • gender是字符型变量,同样需要调整
  • 我们数据中的gender包括F(Female)和M(Male),在很多时候,网站为了尊重客户隐私,还会出现U,就是unknown

1.数据清洗:

1.1年龄清洗

 发现年龄最小为2,最大为2014,属于异常数据,进行数据清洗,这里保留用户年龄在18-80岁之间的群体。

airbnb=airbnb[airbnb['age']>=18]
airbnb=airbnb[airbnb['age']<=80]

 

1.2类别型变量(日期)的调整

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值