我用加强版RFM模型,轻松扒出B站优质up主!(含数据+实战代码)(上)

简介: 本文在RFM模型基础上做了调整,尝试用更符合b站特性的IFL模型,找到各分区优质up主。整个过程以分析项目的形式展开,最终附上了完整源数据和代码,方便感兴趣的同学练手。

一、项目概览


分析目的

对2019年1月~2020年3月发布的视频进行分析,挑选出视频质量高,值得关注的up主。


数据来源


分析数据基于 bilibili 网站上的公开信息,主要爬取了以下数据维度:


2019年1月~2020年3月,科技区播放量过5w视频的分区名称、作者名称、作者id、发布时间、播放数、硬币数、弹幕数、收藏数、点赞数、分享数、评论数,共计50130行。


源数据下载链接


后台回复“b站”,获取完整数据源和代码。


二、数据概览


视频信息表:


image.png


coins:投硬币数

danmu:弹幕数

favorite:收藏数

likes:点赞数

replay:评论数

share:分享数

view:播放量


各字段数量:


image.png


缺失值数量:


image.png


三、数据清洗


删除空值


df = df.dropna()


df.info()


共删除了19行数据,剩余50111行数据


image.png


删除重复值


df = df.drop_duplicates()


df.info()


删除了1312行重复的数据,剩余数据量48799行


image.png


提取所需关键词

df = df[['分区',

'author','date','coins','danmu','favorite','likes','replay','share','view']]

df.head()


image.png


四、构建模型


RFM模型是衡量客户价值和创利能力的重要工具和手段。通过一个客户近期购买行为、购买的总体频率以及消费金额三项指标来描述客户的价值状况。


R:最近一次消费时间(最近一次消费到参考时间的间隔)


F:消费的频率(消费了多少次)


M:消费的金额 (总消费金额)


但RFM模型并不能评价视频的质量,所以在这里针对up主的视频信息构建了IFL模型,以评估视频的质量。


I(Interaction_rate):


I值反映的是平均每个视频的互动率,互动率越高,表明其视频更能产生用户的共鸣,使其有话题感。


image.png


F(Frequence):


F值表示的是每个视频的平均发布周期,每个视频之间的发布周期越短,说明内容生产者创作视频的时间也就越短,创作时间太长,不是忠实粉丝的用户可能将其遗忘。


image.png


L(Like_rate):


L值表示的是统计时间内发布视频的平均点赞率,越大表示视频质量越稳定,用户对up主的认可度也就越高。


image.png

相关文章
|
26天前
|
人工智能 前端开发 搜索推荐
为什么 LLM 搞不定复杂任务?ReAct 与 Reflexion 技术综述
ReAct与Reflexion是提升大语言模型处理复杂任务的关键框架。ReAct通过“推理+行动”循环,结合外部工具解决事实幻觉、信息滞后等问题;Reflexion在此基础上引入自我反思与评估机制,实现从错误中学习的闭环优化。二者结合显著增强了模型的规划、决策与自适应能力,推动AI在问答、编程、智能助手等领域的深度应用。
为什么 LLM 搞不定复杂任务?ReAct 与 Reflexion 技术综述
|
Java 流计算
这个错误信息来自于Java的ScheduledThreadPoolExecutor类,具体的原因是RejectedExecutionException,也就是任务被拒绝执行
【2月更文挑战第3天】这个错误信息来自于Java的ScheduledThreadPoolExecutor类,具体的原因是RejectedExecutionException,也就是任务被拒绝执行
389 2
|
Rust 安全 JavaScript
探索Rust在系统编程领域的前景:虚拟机和编译器开发的新篇章
【8月更文挑战第31天】在系统编程领域,性能与安全性至关重要。Rust作为一种新兴语言,凭借其独特的内存安全和并发特性,正逐渐成为虚拟机和编译器开发的首选。本文通过案例分析,探讨Rust在这些领域的应用,例如Facebook的Compiler VM (CVM)项目和实验性的JavaScript JIT编译器Mithril。Rust的静态类型系统和所有权模型确保了高性能和安全性,而其强大的包管理和库生态则简化了虚拟机的开发。随着Rust社区的不断成熟,预计未来将有更多基于Rust的创新项目涌现,推动系统编程的发展。对于追求高性能和安全性的开发者而言,掌握Rust将成为一个重要战略方向。
380 1
|
XML 前端开发 小程序
基于微信小程序+SpringBoot的停车位共享管理系统的设计和实现(一)
基于微信小程序+SpringBoot的停车位共享管理系统的设计和实现
729 0
基于微信小程序+SpringBoot的停车位共享管理系统的设计和实现(一)
|
Oracle 关系型数据库
Navicat 连接Oracle ORA-28547: connection to server failed, probable Oracle Net admin error
Navicat 连接Oracle ORA-28547: connection to server failed, probable Oracle Net admin error
719 0
|
存储 安全 数据安全/隐私保护
服务器数据恢复—服务器raid常见故障&解决方案
RAID(磁盘阵列)是一种将多块物理硬盘整合成一个虚拟存储的技术,raid模块相当于一个存储管理的中间层,上层接收并执行操作系统及文件系统的数据读写指令,下层管理数据在各个物理硬盘上的存储及读写。相对于单独的物理硬盘,raid可以为用户提供更大的独立存储空间,更快的读写速度,更高的数据存储安全及更方便的统一管理模式。磁盘阵列是否能正常运转是保障服务器中数据正常读写的关键。
|
XML 缓存 Java
解锁Spring Boot AOP的魔力:优雅地管理交叉关注点
解锁Spring Boot AOP的魔力:优雅地管理交叉关注点
574 0
|
搜索推荐 算法
2022-10-31-基于用户的协同过滤推荐算法实现+MAE+RMSE的求解+项目代码+运行结果图(一)
2022-10-31-基于用户的协同过滤推荐算法实现+MAE+RMSE的求解+项目代码+运行结果图
306 0
|
NoSQL 测试技术 API
gRPC:以 C++为例
gRPC:以 C++为例