APP用户行为分析

# 游戏APP用户行为数据分析
# 加载包

导入数据

# 游戏APP用户行为数据分析
# 加载包
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
# 读取数据
az = pd.read_excel(r'D:\日常文档\笔记\用户行为数据/数据源整合.xlsx',sheet_name='安装信息')
zc = pd.read_excel(r'D:\日常文档\笔记\用户行为数据/数据源整合.xlsx',sheet_name='注册信息')

print("查看安装信息:")
az.head()

print('查看注册信息:')
zc.head()

数据清洗,查看空值和重复项。

print("安装信息表:")
print(az.info())
print("-"*30)
print(az.describe())
print("-"*30)
print('空值统计:\n',az.isnull().sum())
print("-"*30)
print('重复数据:',az.duplicated().sum())

描述性分析

print("注册信息表:")
print(zc.info())
print("-"*30)
print(zc.describe())
print("-"*30)
print('空值统计:\n',zc.isnull().sum())
print("-"*30)
print('重复数据:',zc.duplicated().sum())

两种用户类型,用户账号名称计数5992,去重后有5944,两种注册渠道,209个子站,用户唯一ID5622个,注册地区有三个。

print('安装信息表的安装时间范围:',az['安装时间'].min(),az['安装时间'].max())
print('注册信息表的安装时间范围:',zc['安装时间'].min(),zc['安装时间'].max())

# 为了方便分析,选择安装时间在 2020-4-20——2020-04-26 的数据
az = az[az['安装时间']>'2020-04-19 23:59:59']
zc = zc[zc['安装时间']>'2020-04-19 23:59:59']
print('安装信息表的安装时间范围:',az['安装时间'].min(),az['安装时间'].max())
print('注册信息表的安装时间范围:',zc['安装时间'].min(),zc['安装时间'].max())

# 选择注册信息表中'用户唯一ID'存在安装表中的数据
uid = az['用户唯一ID']
zc = zc[zc['用户唯一ID'].isin(uid)]
print('安装信息:',az.shape)
print('注册信息:',zc.shape)

DataFrame.drop_duplicates(subset=None, keep='first', inplace=False)

  • subset:可选参数,指定考虑哪些列来判断重复,默认为所有列。
  • Keep   first'(默认):保留每个重复组中的第一个出现的行。'last':保留每个重复组中的最后一个出现的行。False:删除所有重复的行。
print('注册信息重复ID:',zc['用户唯一ID'].duplicated().sum())
# 去重
zc = zc.drop_duplicates('用户唯一ID')
print('去重后:',zc.shape)

# 安装信息分析
# 安装人数、注册人数、激活率
# 激活率=激活人数/安装人数(这里激活人数以注册人数代替)
print("安装人数:",az.shape[0])
print('注册人数:',zc.shape[0])
print('激活率:%.2f%%'%((zc.shape[0]/az.shape[0])*100)) #以百分比的格式输出激活率

# 日安装量、安装渠道、TOP15子渠道、安装地区、是否WiFi安装、安装的手机类型统计TOP15、系统版本
az['安装日期']=az['安装时间'].dt.date
print('日安装用户量:\n',az.groupby('安装日期').用户唯一ID.count())

print("安装渠道:\n",az['渠道'].value_counts())
print('\n TOP 15子渠道:\n',az['子渠道'].value_counts()[:15])

print('安装地区:\n',az['地区'].value_counts())
print('是否WiFi安装:\n',az['WIFI'].value_counts())

# 从机型属性中拆分手机类型属性,由于手机品牌名称存在大小写不一的情况(例如OPPO,oppo),因此将手机类型属性字段统一转换为首字母大写的格式:
# PS :转换成以下模式再统计也是一样的,但必须先统一格式后再统计:
# .lower() 将字符串中全部字符转换为小写
# .upper() 将字符串中全部字符转换为大写
# .title() 将字符串中每个单词的首字母转换为大写字母

print("用户安装手机类型TOP 15:\n")
az['手机类型'] = az['机型'].str.split("-").str[0]
az['手机类型'] = az['手机类型'].str.title() #.title()将所有手机类型的名称转换为首字母大写的格式
az['手机类型'].value_counts()[:15]

print('系统:',az['系统'].value_counts())
print('\n操作系统版本:\n',az.groupby('操作系统版本').系统.count())

# 注册信息分析
# 每日注册人数、用户类型、注册时段、激活时间、日新增新用户统计
zc['注册日期'] = pd.to_datetime(zc['注册时间']).dt.date
print('日注册用户:\n',zc.groupby('注册日期').用户唯一ID.count())

print("用户类型:\n",zc['用户类型'].value_counts().reset_index(name='计数'))

plt.rcParams['font.sans-serif'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False
zc['注册时段'] = pd.to_datetime(zc['注册时间']).dt.hour
hzc = zc.groupby(['用户类型','注册时段']).用户唯一ID.count().reset_index(name='total')
sns.lineplot(data=hzc,x='注册时段',y='total',hue='用户类型')#hue: 可选参数,用于根据某一列数据对折线进行分组着色。
plt.title('各时段的注册用户量',loc='left')
plt.show()

print("激活时间:\n")
zc['激活时间'] = pd.to_datetime(zc['注册时间']).dt.day - pd.to_datetime(zc['安装时间']).dt.day
jh = zc['激活时间'].value_counts().reset_index(name='total')
jh['percent'] =(jh['total']/7282).round(3)
print(jh)
# 有4655人选择在当天激活,占安装人数中的63.9%,占整体注册人数中的94.6%,有32.5%的用户没有在7天内激活注册

print('日新增新用户:\n')
nzc = zc[zc['用户类型']=='new']
nzc.groupby('注册日期').用户唯一ID.count()

淘宝APP作为中国最大的在线购物平台之一,拥有庞大的用户基数和丰富的用户行为数据。对于淘宝APP用户行为数据的分析,可以从以下角度进行: 首先,可以分析用户在淘宝APP上的浏览行为。通过收集用户APP中的浏览历史、浏览时长等数据,可以了解用户对不同类别商品的兴趣偏好,进而为用户提供个性化的推荐服务,增加用户购买的可能性。同时,可以通过用户的浏览行为分析用户的消费需求和购物习惯,为商家提供精准的广告投放和营销策略。 其次,可以分析用户在淘宝APP上的交易行为。通过分析用户的购买频次、订单金额、购买商品类别等数据,可以洞察用户的消费能力和购物需求,为商家提供精准的商品推荐和促销策略。同时,还可以通过分析用户的交易行为,对热销商品和潜在的销售机会进行预测,为商家优化商品的供应链管理和库存控制。 另外,还可以通过对用户在淘宝APP上的评价行为进行分析。通过分析用户的评价内容、评价星级、评价时间等数据,可以了解用户对商品的满意度、用户对服务的评价以及用户的购物体验等信息。这些评价数据对商家来说是非常宝贵的反馈,可以帮助商家改进产品品质和服务质量,提升用户满意度,加强品牌形象。 总之,淘宝APP用户行为数据分析可以帮助商家洞察消费者需求和购物习惯,为商家提供精准的广告投放、商品推荐和促销策略,帮助商家优化运营和提升用户满意度,实现商家和用户的共赢。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值