对抖音流量获取的数据分析

文章目录

  • 一、分析目的
  • 二、数据来源
    • 字段说明
  • 三、数据处理
    • 1.引入库
    • 2.数据清洗&预处理
      • 加载数据
      • 检测是否存在空值
      • 检测是否存在重复值
  • 四、数据分析
    • 抖音网红视频数据分析
      • 抖音播放量来源分布
      • 视频时长与点赞完播率之间的关系
        • 作品时长与播放量的关系
        • 作品时长与作品数量的关系
        • 作品时长与完播率的关系
        • 作品时长与点赞率的关系
        • 作品发布时间(小时)与点赞完播率之间的关系
        • 发布作品时间和播放量之间的关系
        • 24小时内用户投稿(发布作品)数量的变化
    • 背景音乐播放量之间的关系
  • 总结


一、分析目的

抖音是一个面向全年龄的音乐短视频社区平台。目前用户众多,有不少人都成为了网红,聚集了大量粉丝。在此希望能看出一些他们之间的共性,帮助后来人少走一些弯路。并结合实际观察抖音运营存的现状,提出一些建议。
采集到的抖音网红的相关建议,如下,我们要通过数据分析验证这些建议的真实性

  • 抖音98.52%的流量都会流向算法推荐视频,获得算法推荐是获得更多播放的关键所在。
  • 最重要的始终是题材的选择,初始流量池大更容易获得算法青睐。
  • 除去题材外,投稿的最佳时间日常是在0-5点,有平台活动一定要参与。
  • 视频时长最好在7-10s,其次是0-6s及23s以内,最长也不建议超过40s。
  • 背景音乐最好选择当下最流行的歌曲。

二、数据来源

本文的数据集为抖音四十天内的数据交互记录,一行记录就是一个播放数据,总共近600w条数据。
爬取的数据示例

字段说明

数据字段数据含义
uid用户id
user_city用户所在城市
item_id作品id
author_id作者id
item_city作品城市
channel观看到该作品的来源
finish是否浏览完作品
like是否对作品点赞
music_id音乐id
device设备id
time作品发布时间
duration_time作品时长

三、数据处理

1.引入库

import pandas as pd 
import numpy as np 
import matplotlib.pyplot as plt
import time
import seaborn as sns
%matplotlib inline
#更改设计风格
plt.style.use('ggplot')
plt.rcParams['font.sans-serif'] = ['SimHei']#(显示中文)
plt.rcParams['axes.unicode_minus'] = False#(显示负数)

2.数据清洗&预处理

加载数据

data = pd.read_csv('./douyin.txt')
data.head()

在这里插入图片描述

检测是否存在空值

data.isnull().sum(axis=0)
uid              0
user_city        0
item_id          0
author_id        0
item_city        0
channel          0
finish           0
like             0
music_id         0
device           0
time             0
duration_time    0
dtype: int64

检测是否存在重复值

data.duplicated().sum()
data.drop_duplicates(inplace=True)
#重新设置索引
data.reset_index(drop=True,inplace=True)

数据是进行过脱敏的数据,无法观察原有情况,不过可以推断其中的-1是缺失值直接删除即可。

data.replace(to_replace=-1,value=np.nan,inplace=True)
data.isnull().sum()
data.dropna(axis=0,inplace=True)
data.reset_index(drop=True,inplace=True)

原始的数据列中存在device为设备ID,这个特征于分析无意义,可以将其删除

data.drop(labels='device',axis=1,inplace=True)
data.info()

在这里插入图片描述
time列是时间戳,此处修改成正常时间

time.strftime(“%Y-%m-%d %H:%M:%S”, time.localtime(1511572885))

real_time = []
for i in data['time']:timeArray = time.localtime(i)otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)real_time.append(otherStyleTime)    
data['real_time'] = real_time
data.drop(labels='time',inplace=True,axis=1)
data['real_time'] = pd.to_datetime(data['real_time'])

时间列中既有日期也有具体的时分秒,网红建议发布视频的时间为0-5点,则需要将小时单独从日期中抽取出来作为新的一列,将年-月-日的时间也抽取出来作为新的一列。

data['H'] = data.real_time.dt.hour
data['date']=data.real_time.dt.date
#将date转换成字符串类型
data['date'] = data.date.astype('str')

四、数据分析

抖音网红视频数据分析

抖音播放量来源分布

channel = data.groupby(by='channel').count()['uid']
channel

在这里插入图片描述
结论1: 虽然没有明确说明,但作为算法驱动的短视频平台,显然可知“0”是算法推荐的视频。那么在抖音获得播放量的关键就是获得算法推荐进入更大的流量池。

视频时长与点赞完播率之间的关系

作品时长与播放量的关系

item_duration = data.groupby(by='duration_time').count()['uid']
plt.plot(item_duration)
plt.xlim(2,40)
plt.xlabel('作品时长')
plt.ylabel('播放量')
plt.title("作品时长与播放量的关系")

在这里插入图片描述

作品时长与作品数量的关系

duration_nums = data.groupby('duration_time')['item_id'].nunique()
plt.plot(duration_nums)
plt.xlim(2,40)
plt.xlabel('作品时长')
plt.ylabel('作品数量')
plt.title("作品时长与作品数量的关系")

在这里插入图片描述

作品时长与完播率的关系

完播率和点赞率可以用不同播放时长的作品对应的完播和点赞的均值表示

finish_p = data.groupby('duration_time')['finish'].mean()
plt.plot(finish_p)
plt.xlim(2,100)
plt.xlabel('作品时长')
plt.ylabel('完播率')
plt.title("作品时长与完播率的关系")

在这里插入图片描述

作品时长与点赞率的关系

like_p = data.groupby('duration_time')['like'].mean()
plt.plot(like_p)
plt.xlim(2,40)
plt.xlabel('作品时长')
plt.ylabel('点赞率')
plt.title("作品时长与点赞率的关系")

在这里插入图片描述
观察结果:
作品绝大多数分布在7-10s中,总体来说在0s-22s之间都有一定数量的投稿,22s以上的就很少了。
播放量的分布基本与作品数量相同。
完播率在2s-40s内总体在40%以上,40s以后开始剧烈波动,因此作品时长应该设置在40s之内比较稳妥
点赞率在2s-10s内基本维持在1%之内,在12s-20s之间会在0.7%-1.1%之间波动,在20s以后数据变化的波动完全没有规律。

  • 结论2:视频时长最好在7-10s,其次是0-6s及23s以内,最长也不建议超过40s

作品发布时间(小时)与点赞完播率之间的关系

H_f_l = data.groupby('H')[['finish','like']].mean()
H_f_l.plot()
plt.title("作品发布时间与点赞完播率之间的关系")

在这里插入图片描述

发布作品时间和播放量之间的关系

time_play_s = data.groupby('H')['uid'].count()
plt.plot(time_play_s)

在这里插入图片描述

24小时内用户投稿(发布作品)数量的变化

关注大多数用户都是什么时间投稿(考虑去重)

public_item_s = data.groupby('H')['item_id'].nunique()
plt.plot(public_item_s)

在这里插入图片描述
放在一起观察

  • 结论3:
    不同时间段内发布的作品点赞率和完播率不会有太大变化,整体播放量和投稿数也基本相同这说明播放量和投稿时间关系亦不大,不过还是可以看出0-5点的播放量会略高。如果投稿最佳时间是在0-5点,但并无特殊优势。

背景音乐播放量之间的关系

music_play_s = data.groupby(by='music_id')['uid'].count().sort_values(ascending=False)
top_10_music = music_play_s.iloc[:10]
top_10_music

在这里插入图片描述

plt.plot(top_10_music.index.astype('str'),top_10_music.values)

在这里插入图片描述

  • 结论4: 对于视频配乐更推荐当时最火的歌曲,会比其他歌曲更容易获得高播放量。

总结

为了使在抖音上的视频更高效地获得流量,获得播放量的关键就是获得算法推荐进入更大的流量池。视频时长最好在7-10s,其次是0-6s及23s以内,最长也不建议超过40s。不同时间段内发布的作品点赞率和完播率不会有太大变化,整体播放量和投稿数也基本相同这说明播放量和投稿时间关系亦不大,不过还是可以看出0-5点的播放量会略高。如果投稿最佳时间是在0-5点,但并无特殊优势。 对于视频配乐更推荐当时最火的歌曲,会比其他歌曲更容易获得高播放量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/32697.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

抖音网上如何赚钱变现,有哪些具体的方法

推荐阅读1:【创业粉引流变现项目】流量变现 推荐阅读2:【4种在家就能带货赚钱的直播课】 普通人想要在互联网上赚钱,除了要有可以实操的方法之外,最重要的其实还是个人的思维模式,哪里的流量多,那么哪里就…

TikTok变现玩法分析

备注:以下只是本人近期研究的一些基本分析,具体操作还是在实践中验证吧。而我自己的验证结果后期也会写进来,因为我也刚开始思考和实践。 一、前言 从个人角而言,以及看到和前期简单尝试调研的结果来看,我更偏向于转…

我赢助手详解:抖音变现目前流行的是七种方式之直播变现和Ip变现

抖音变现目前流行的是七种方式,电商卖货、广告营销、内容付费、品牌导流、直播变现、IP变现、社群营销。 今天我们来说一说直播变现模式。直播变现,他有两种模式: 第一种就是直接在直播中去带货,然后就转化。第二种就是获得打赏。…

html+css仿写小米商城

利用空余时间仿写了一个小米商城的页面,都是最基础的结构和样式的写法,主要想锻炼自己写代码的能力和熟悉一下PC端网页的布局。等学完其他知识再来做补充。这里先记录一下我的仿写思路,以免忘记。 一、成果展示: 小米商城仿写 二、…

HTML+CSS+JavaScript仿写的小米官网

HTML部分 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><meta http-equiv"X-UA-Compatible" cont…

练习篇:仿写 Instagram 列表

前面已经讲解了一些常用的布局方式、常用 Widget 组件以及 Dart 语法。那么这节课我们就来一个小总结,通过一个实例小页面来复习巩固我们之前学过的知识,理论结合实践。本课练习篇主要是完成一个完整的页面的编写,将会涉及到前面学习过的布局 Widget 和组件 Widget ,一起来…

web前端之百度首页仿写

<html> <head> <meta charset"UTF-8"> <title>百度一下&#xff0c;你就知道</title> </head> <body> <table border"0" width"100%" height"900px"> <tr height"20%"&…

模板模式 ——仿写JdbcTemplate

在模板模式&#xff08;Template Pattern&#xff09;中&#xff0c;一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现&#xff0c;但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。 介绍 意图&#xff1a;定义一个操作中…

PHP仿写网站,仿写php中文网移动端首页—2019年9月10日

仿写php中文网移动端首页 身体&#xff1a; 布局原则: 宽度自适应, 高度是固定的。 最小宽度320&#xff0c;最大768px&#xff0c;上下外边距为0&#xff0c;左右居中&#xff0c;垂直方向滚动条&#xff0c;不脱离文档流&#xff0c;不出现水平滚动条 头部&#xff1a; 生成绝…

仿写简单IOC

目录 TestController类: UserService类: 核心代码SpringIOC&#xff1a; Autowired和Component注解 SpringIOCTest 类 ​编辑 总结&#xff1a; TestController类: Component public class TestController {Autowiredprivate UserService userService;public void test…

SpringMVC简单仿写

之前我分享过SpringMVC的基本原理与配置&#xff08;原文链接&#xff1a;https://blog.csdn.net/L170311/article/details/129339120&#xff09;,为了更深层次的学习&#xff0c;精益求精&#xff0c;手动仿写了一个MVC原理实现demo&#xff0c;一起学习一下吧 结构目录&…

Netty :仿写微信 IM 即时通讯系统

前言 最近公司要自研聊天系统,开始撸代码… 仿微信IM系统简介 (1)客户端使用Netty程序实现逻辑 解析控制台指令(譬如发送消息或者建立群聊等指令)->基于控制台输入创建指令对象->协议的编码(通过自定义二进制协议将指令对象封装成二进制); 接收服务端数据拆包粘包处理…

python如何仿写文章_tensorflow - RNN学习文章的风格去仿写

1 . 能干什么 在知乎&#xff0c;博客上面会看到有人分享自己的一些有意思的项目&#xff0c;比如下面这些&#xff0c;用rnn学习一个诗歌&#xff0c;散文&#xff0c;党章&#xff0c;小说什么的。然后&#xff0c;在自己生成一些东西。比如&#xff0c;下面的这两个例子。作…

html仿写百度,vue 简单仿写百度搜索

vue .grey{ background: #CCC; height: 25px; } ul,li{ margin: 0; padding: 0; list-style-type:none; margin-left: 65px; width: 306px; } .dialog{ margin-left: 10px; margin-top: 30px; width: 300px; height: 25px; } .note{ margin-left: 130px; } window.οnlοadfunc…

html搜狐热搜列表仿写,GRE高分范文不能看过就算 学会仿写才能带来真正提高

可以说所有的写作都是从模仿开始。GRE作文同样不例外。通过参考他人的好文章&#xff0c;学习别人的写法&#xff0c;最后写出自己的文章是非常实用的作文学习方式。不过&#xff0c;模仿也需要讲究方法&#xff0c;单纯模仿并不会让大家有太多的收获。掌握方法才能有效提升自身…

PHP仿写网站,手机网站仿写0910

最近有点儿忙,这个作业交的有点儿晚了,但这个作业是看了老师讲解后一口气写出来的代码,不像以前的作业要反复的看老师的课件才完成的。通过这一段前端知识的学习我最大的收获就是学会用开发者工具去看一个网站的代码了,可以看懂大多数的网页的静态代码了,会逐步的分析一个…

绕过接口参数签名验证

在一些关键业务接口,系统通常会对请求参数进行签名验证,一旦篡改参数服务端就会提示签名校验失败。在黑盒渗透过程中,如果没办法绕过签名校验,那么就无法进一步深入。 微信小程序的前端代码很容易被反编译,一旦签名加密算法和密钥暴漏,找到参数的排序规则,那么就可以篡改…

在Mac电脑中轻松打开终端程序的快捷方法

命令行窗口实际就是我们常用的终端程序&#xff0c;命令行窗口在高级用户上&#xff0c;是经常用到的&#xff0c;但在Mac电脑中打开终端程序是比较麻烦的&#xff0c;下面分享几个快捷方法可以轻松打开终端程序。 方法一、 1、在Mac键盘上按住commandspace&#xff0c; 2、在…

【mac】关于终端上使用的快捷键

【mac】关于终端上使用的快捷键 清理行&#xff1a;您可以使用Ctrl U清理到开头。清理线路&#xff1a;Ctrl E Ctrl U擦拭终端中的当前线路清理线路&#xff1a;Ctrl A Ctrl K擦拭终端中的当前线路取消当前的命令行/行&#xff1a;Ctrl C。调用已删除的命令&#xff1a;Ctrl Y&…