本文利用Airbnb用户的注册、订单和日志行为等数据,从用户画像、营销渠道转化率、订单漏斗分析三方面进行分析。我们需要考虑以下3个问题:
- 爱彼迎的目标用户是什么样的人群?有什么特点?
- 这些人群接受信息的渠道有哪些?或者说需求对应出现的场景在什么时候什么地方?
- 以什么样的方式给他们传递爱彼迎的产品价值是有效的,印象深刻的?
这三个问题分别定义了传播的对象、渠道、效率。
有了要解决的问题,我们就可以据此来定义相应的分析指标。
用户画像描述了Airbnb客户的整体特征,如性别比例、年龄分层、所属地比例、目的地等几个方面进行刻画。同时刻画了注册用户的设备、账号类别等基本信息,掌握用户渠道来源。
营销方面针对不同营销渠道和营销内容(例如网站的不同推广计划)的注册量和下单转化率进行分析,了解更有效的营销渠道和效果,从而有针对性的投放广告,节约成本。
订单漏斗分析根据客户的行为日志数据对用户的活跃程度、下单率、付款率、复购率进行了可视化,可以观察整体流程中的薄弱点,从而有针对性的提高某一方面的转化率。
本文参考了文章Airbnb(爱彼迎)产品分析报告里的一些指标观点。
数据描述
数据来源于Kaggle竞赛,主要包含以下信息:
- train_users.csv - 用户训练集
- id: 用户ID
- date_account_created: 账户创建日期
- timestamp_first_active: 第一次浏览的时间戳,注意由于用户注册前就可以浏览,因此可能早于注册日期和第一次预定日期。
- date_first_booking: 第一次预定日期
- gender:性别
- age :年龄
- signup_method :注册方式
- signup_flow: 注册来源网页
- language: 语言偏好
- affiliate_channel: 营销渠道
- affiliate_provider: 营销来源,例如google等
- first_affiliate_tracked: 在注册之前,用户与之交互的第一个营销内容
- signup_app :注册使用的app
- first_device_type :第一次使用时的设备类型
- first_browser :第一次使用时的浏览器
- country_destination:旅行目的地
- sessions.csv - 用户行为日志
- user_id: to 与用户表的ID 对应
- action :用户行为
- action_type :用户行为类型
- action_detail :用户行为具体细节
- device_type:设备类型
- countries.csv - 数据集中目的地国家的总结统计和地点
- age_gender_bkts.csv 用户年龄分组、性别、目的地的总结统计
数据预处理
在开始分析之前,首先对数据进行预处理,包括重复值、缺失值、异常值等的处理。
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np
sns.set(style="darkgrid")
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
data = pd.read_csv('train_users_2.csv')
sum(data['id'].value_counts() == 1) #观察是否有重复id
data.info()
对比ID数量为1 的ID个数和总数据量,发现并没有重复ID ,说明数据中是没有重复ID 的,ID 可以用作主键。
查看16个变量的缺失值情况如下: