前言
大家早好、午好、晚好吖 ❤ ~欢迎光临本文章
数据准备
代码
1. 理解数据
1.1 字段含义
'''
python资料获取看这里噢!! 小编 V:qian97378,即可获取:
文章源码/教程/资料/解答等福利,还有不错的视频学习教程和PDF电子书!
'''
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
plt.rcParams['font.family'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False
1.2导入数据
data = pd.read_csv('douyin_dataset.csv')
1.3 数据预览
data.head()
data.info()
2.数据预处理
数据格式处理
'''
python资料获取看这里噢!! 小编 V:qian97378,即可获取:
文章源码/教程/资料/解答等福利,还有不错的视频学习教程和PDF电子书!
'''
data['real_time'] = pd.to_datetime(data['real_time'])
data['date'] = pd.to_datetime(data['date'])
data.info()
3.数据分析
平台:日播放量,日用户量,日作者量,日作品量
作者:播放量,点赞率,完播率,背景音乐,作品时长,作品发布时间段
# 日播放量随时间变化的趋势
data_id = data.groupby('date')['uid'].count()
x = data_id.index
plt.figure(figsize=(12,15))
ax1 = plt.subplot(411)
plt.plot(x,data_id)
plt.title('日播放量随时间变化的趋势')
plt.ylabel('日播放量')
data_uid = data.groupby('date')['uid'].nunique()
ax2 = plt.subplot(412)
x = data_uid.index
plt.plot(x,data_uid)
plt.title('日用户量随时间变化的趋势')
plt.ylabel('日用户量')
'''
python资料获取看这里噢!! 小编 V:qian97378,即可获取:
文章源码/教程/资料/解答等福利,还有不错的视频学习教程和PDF电子书!
'''
ax3 = plt.subplot(413)
data_authorid = data.groupby('date')['author_id'].nunique()
x = data_authorid.index
plt.plot(x,data_authorid)
plt.title('日作者量随时间变化的趋势')
plt.ylabel('日作者量')
ax4 = plt.subplot(414)
data_itemid = data.groupby('date')['item_id'].nunique()
x = data_itemid.index
plt.plot(x,data_itemid)
plt.title('日作品量随时间变化的趋势')
plt.ylabel('日作品量')
plt.show()
作者:作品数量,作品获赞率,作品播放率
# 作者作品数量前20
author_20 = data['author_id'].value_counts().iloc[:20]
x1 = author_20.index.astype('str')
y1 = author_20.values
plt.figure(figsize=(18,6))
ax1 = plt.subplot()
plt.bar(x1,y1)
ax2 = ax1.twinx()
author_l_20 = data.groupby('author_id')['like'].mean()[author_20.index]
x2 = author_l_20.index.astype('str')
y2 = author_l_20.values
plt.plot(x2,y2,color='red')
ax3 = ax1.twinx()
author_p_20 = author_20/len(data)
x3 = author_p_20.index.astype('str')
y3 = author_p_20.values
plt.plot(x3,y3,color='green')
# 背景音乐
music_10 = data['music_id'].value_counts().iloc[:10]
x1 = music_10.index.astype('str')
plt.figure(figsize=(12,4))
plt.bar(x1, music_10.values)
作品时长
不同作品时长与播放量和作品量的关
data_time = data.groupby('duration_time')['uid'].count()
data_time_item = data.groupby('duration_time')['item_id'].nunique()
'''
python资料获取看这里噢!! 小编 V:qian97378,即可获取:
文章源码/教程/资料/解答等福利,还有不错的视频学习教程和PDF电子书!
'''
x = data_time.index
y1 = data_time
y2 = data_time_item
fig, ax1 = plt.subplots(figsize=(12,6))
ax1.set_title('作品不同时长的播放量与作品量分布情况')
ax1.set_xlabel('时长/s')
ax1.set_ylabel('播放量',color='red')
ax1.plot(x, y1, color="red")
ax2 = ax1.twinx()
ax2.set_ylabel('作品量',color='orange')
ax2.plot(x, y2, color='orange')
ax2.set_xlim(0,50)
plt.show()
7-12s的作品量占大多数
作品发布时间
不同作品发布时间的作品量和播放量的关系
data_time = data.groupby('H')['uid'].count()
data_time_item = data.groupby('H')['item_id'].nunique()
x = data_time.index
y1 = data_time
y2 = data_time_item
fig, ax1 = plt.subplots(figsize=(12,6))
ax1.set_title('作品不同时长的播放量与作品量分布情况')
ax1.set_xlabel('时长/s')
ax1.set_ylabel('播放量',color='red')
ax1.plot(x, y1, color="red")
ax2 = ax1.twinx()
ax2.set_ylabel('作品量',color='orange')
ax2.plot(x, y2, color='orange')
plt.show()
4.总结
4.1 平台
增加活动推广
4.2 作者
背景音乐:热门歌曲
作品时长:7-12s,最好不要超过23s
作品发布时间:在休息时间内发布
积极参加平台活动
尾语
好了,今天的分享就差不多到这里了!
对下一篇大家想看什么,可在评论区留言哦!看到我会更新哒(ง •_•)ง
喜欢就关注一下博主,或点赞收藏评论一下我的文章叭!!!