基于R的Bilibili视频数据建模及分析——预处理篇

2023-05-16

基于R的Bilibili视频数据建模及分析——预处理篇

文章目录

  • 基于R的Bilibili视频数据建模及分析——预处理篇
    • 0、写在前面
    • 1、项目介绍
      • 1.1 项目背景
      • 1.2 数据来源
      • 1.3 数据集展示
    • 2、数据预处理
      • 2.1 删除空数据
      • 2.2 增加id字段
      • 2.3 处理数值字段
    • 3、参考资料


在这里插入图片描述


0、写在前面

实验环境

  • Python版本:Python3.9
  • Pycharm版本:Pycharm2021.1.3
  • R版本:R-4.2.0
  • RStudio版本:RStudio-2021.09.2-382

该实验一共使用4个数据集,但文章讲述只涉及到一个数据集,并且对于每个数据集的分析,数据大小在110条左右

1、项目介绍

1.1 项目背景

Bilibili是国内比较热门的视频网站,本次实验是通过对Bilibili四个不同专区视频数据进行R使用的统计分析、聚类分析以及建模分析

1.2 数据来源

  • 数据来源于和鲸社区

https://www.heywhale.com/mw/dataset/62a45d284619d87b3b2b9147/file

数据字段描述说明

  • title:视频的标题
  • duration:视频时长
  • publisher:视频作者
  • descriptions:视频描述信息
  • pub_time:视频发布时间
  • view:视频播放量
  • comments:视频评论数
  • praise:视频点赞量
  • coins:视频投币数
  • favors:视频收藏数
  • forwarding:视频转发量

1.3 数据集展示

表单机游戏——游戏区:

在这里插入图片描述

2、数据预处理

2.1 删除空数据

整行数据为空,直接删除

tp

2.2 增加id字段

在Excel每张表的首列添加id字段,
预处理后数据展示:

tp

2.3 处理数值字段

对于view,comments,praise,coins,favors,forwarding这些数值型字段,原始数据中,1万以上的数值是以xxx.xx万的形式展示的,为方便后续统计,此处将这些类型的字段值转换为常规数字格式。

此处的预处理操作使用Python来处理,代码如下

import pandas as pd
data1 = pd.read_csv('data/videos1.csv', encoding='utf8')

print(data1.shape)
print('---------------------------------------')

# TODO 处理数值字段(view,comments,praise,coins,favors,forwarding)
import pandas as pd
import operator
data1 = pd.read_csv('data/videos1.csv', encoding='utf8')
print(data1.head(3))
print('-------------------------------------------------------')

# # TODO  id,title,duration,publisher,pub_time,view,comments,praise,coins,favors,forwarding
def operateVideos1() :
    for i in range(0, len(data1)):
        # if i == 0 :
        #     print(data1.iloc[i])
        #     print(data1.iloc[i][5])
        id = data1.iloc[i][0]
        view = data1.iloc[i][5]
        comments = data1.iloc[i][6]
        praise = data1.iloc[i][7]
        coins = data1.iloc[i][8]
        favors = data1.iloc[i][9]
        forwarding = data1.iloc[i][10]

        if operator.contains(view, '万'):
            num = int(float(view[0: len(view) - 1]) * 10000)
            data1._set_value(i, "view", num)
        if operator.contains(comments, '万'):
            num = int(float(comments[0: len(comments) - 1]) * 10000)
            data1._set_value(i, "comments", num)
        if operator.contains(praise, '万'):
            num = int(float(praise[0: len(praise) - 1]) * 10000)
            data1._set_value(i, "praise", num)
        if operator.contains(coins, '万'):
            num = int(float(coins[0: len(coins) - 1]) * 10000)
            data1._set_value(i, "coins", num)
        if operator.contains(favors, '万'):
            num = int(float(favors[0: len(favors) - 1]) * 10000)
            data1._set_value(i, "favors", num)
        if operator.contains(forwarding, '万'):
            num = int(float(forwarding[0: len(forwarding) - 1]) * 10000)
            data1._set_value(i, "forwarding", num)
    data1.to_csv('out/v1.csv', index=False)
    
operateVideos1()

预处理之后的部分数据展示:

数据集1:

tp

3、参考资料

  • 多元统计分析及R使用(第五版)

结束!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于R的Bilibili视频数据建模及分析——预处理篇 的相关文章

  • android -- 蓝牙 bluetooth (三)搜索蓝牙

    接上篇打开蓝牙继续 xff0c 来一起看下蓝牙搜索的流程 xff0c 触发蓝牙搜索的条件形式上有两种 xff0c 一是在蓝牙设置界面开启蓝牙会直接开始搜索 xff0c 另一个是先打开蓝牙开关在进入蓝牙设置界面也会触发搜索 xff0c 也可能
  • 单源最短路径问题——分支限界法(Java)

    单源最短路径问题 分支限界法 xff08 Java xff09 文章目录 单源最短路径问题 分支限界法 xff08 Java xff09 1 前置芝士1 1 分支限界法求解目标1 2 分支限界法引言1 3 分支限界法基本思想1 4 两种典型
  • 符号三角形问题(Java)

    符号三角形问题 xff08 Java xff09 文章目录 符号三角形问题 xff08 Java xff09 1 前置介绍2 算法设计3 程序代码4 算法效率5 参考资料 1 前置介绍 符号三角形定义 如下图所示 xff0c 符号三角形是由
  • 装载问题 ——分支限界法(Java)

    装载问题 分支限界法 xff08 Java xff09 文章目录 装载问题 分支限界法 xff08 Java xff09 1 问题描述2 算法设计3 算法的改进4 程序代码5 参考资料 1 问题描述 有一批共n个集装箱要装上2艘载重量分别为
  • 装载问题 ——回溯法(Java)

    装载问题 回溯法 xff08 Java xff09 文章目录 装载问题 回溯法 xff08 Java xff09 1 问题描述1 1 装载问题1 2 转换问题 2 算法设计2 1 可行性约束函数2 2 上界函数2 3 解空间树2 4 剪枝函
  • 上传项目代码到Github|Gitee

    上传项目代码到Github Gitee 文章目录 上传项目代码到Github Gitee1 前置准备1 1 Git 安装1 2 在 Git 中设置用户名1 2 1 为计算机上的每个存储库设置 Git 用户名1 2 2 为一个仓库设置 Git
  • NoSQL数据库原理与应用综合项目——HBase篇

    NoSQL数据库原理与应用综合项目 HBase篇 文章目录 NoSQL数据库原理与应用综合项目 HBase篇 0 写在前面 1 本地数据或HDFS数据导入到HBase 2 Hbase数据库表操作 2 1 Java API 连接HBase 2
  • NoSQL数据库原理与应用综合项目——MongoDB篇

    NoSQL数据库原理与应用综合项目 MongoDB篇 文章目录 NoSQL数据库原理与应用综合项目 MongoDB篇 0 写在前面 1 本地数据或HDFS数据导入到MongoDB 2 MongoDB数据库表操作 2 1 Java API 连

随机推荐

  • NoSQL数据库原理与应用综合项目——Redis篇

    NoSQL数据库原理与应用综合项目 Redis篇 文章目录 NoSQL数据库原理与应用综合项目 Redis篇 0 写在前面 1 本地数据或HDFS数据导入到Redis 2 Redis数据库表操作 2 1 Java API 连接Redis 2
  • NoSQL数据库原理与应用综合项目——Neo4j篇

    NoSQL数据库原理与应用综合项目 Neo4j篇 文章目录 NoSQL数据库原理与应用综合项目 Neo4j篇 0 写在前面 1 本地数据或HDFS数据导入到Neo4j 2 Neo4j数据库表操作 2 1 使用Python连接Neo4j 2
  • Hadoop综合项目——二手房统计分析(起始篇)

    Hadoop综合项目 二手房统计分析 起始篇 文章目录 Hadoop综合项目 二手房统计分析 起始篇 0 写在前面 1 项目背景与功能 1 1 项目背景 1 2 项目功能 2 数据集和数据预处理 2 1 数据集 2 2 数据预处理 2 2
  • android -- 蓝牙 bluetooth (四)OPP文件传输

    在前面android 蓝牙 bluetooth xff08 一 xff09 入门文章结尾中提到了会按四个方面来写这系列的文章 xff0c 前面已写了蓝牙打开和蓝牙搜索 xff0c 这次一起来看下蓝牙文件分享的流程 xff0c 也就是蓝牙应用
  • Hadoop综合项目——二手房统计分析(MapReduce篇)

    Hadoop综合项目 二手房统计分析 MapReduce篇 文章目录 Hadoop综合项目 二手房统计分析 MapReduce篇 0 写在前面 1 MapReduce统计分析 1 1 统计四大一线城市房价的最值 1 2 按照城市分区统计二手
  • Hadoop综合项目——二手房统计分析(Hive篇)

    Hadoop综合项目 二手房统计分析 Hive篇 文章目录 Hadoop综合项目 二手房统计分析 Hive篇 0 写在前面 1 Hive统计分析 1 1 本地数据 HDFS数据导入到Hive 1 2 楼龄超过20年的二手房比例 1 3 四大
  • Hadoop综合项目——二手房统计分析(可视化篇)

    Hadoop综合项目 二手房统计分析 可视化篇 文章目录 Hadoop综合项目 二手房统计分析 可视化篇 0 写在前面 1 数据可视化 1 1 二手房四大一线城市总价Top5 1 2 统计各个楼龄段的二手房比例 1 3 统计各个城市二手房标
  • Git Bash Here和RStudio软件的问题解决

    Git Bash Here和RStudio软件的问题解决 文章目录 Git Bash Here和RStudio软件的问题解决0 写在前面1 Git软件在任务栏图标空白2 RStudio软件2 1 警告信息InormalizePath pat
  • 算法的复杂性分析

    算法的复杂性分析 文章目录 算法的复杂性分析0 算法评价的基本原则1 影响程序运行时间的因素2 算法复杂度2 1 算法的时间复杂度2 2 渐进表示法2 2 1 运行时间的上界2 2 运行时间的下界2 2 3 运行时间的准确界 3 总结4 参
  • 整数划分问题(Java递归)

    整数划分问题 xff08 Java递归 xff09 文章目录 整数划分问题 xff08 Java递归 xff09 0 问题描述1 递归式2 代码3 参考 0 问题描述 整数划分问题 将正整数n表示成一系列正整数之和 xff1a n 61 n
  • 快速排序(Java分治法)

    快速排序 xff08 Java分治法 xff09 文章目录 快速排序 xff08 Java分治法 xff09 0 分治策略1 思路步骤2 代码3 复杂度分析3 1 最好情况3 2 最坏情况3 3 平均情况3 4 性能影响因素 4 合并排序V
  • 动态规划算法

    动态规划算法 文章目录 动态规划算法0 动态规划的思想方法1 动态规划法的设计思想2 动态规划基本步骤3 动态规划算法设计步骤3 1 动态规划算法的基本要素 4 两种实现的比较5 备忘录方法6 备忘录方法与动态规划比较7 参考 0 动态规划
  • 最长公共子序列(LCS)

    最长公共子序列 xff08 LCS xff09 文章目录 最长公共子序列 xff08 LCS xff09 0 写在前面1 问题描述2 最长公共子序列的结构3 子问题的递归结构4 计算最优值5 算法的改进6 参考 0 写在前面 本文文字大都来
  • 贪心算法(Java)

    贪心算法 文章目录 贪心算法0 写在前面1 贪心算法的基本要素1 1 贪心选择性质1 2 最优子结构性质1 3 贪心算法与动态规划算法的差异 2 贪心算法的特点3 贪心法的正确性证明4 活动安排问题4 1 问题描述4 2 贪心法的设计思想4
  • android -- 蓝牙 bluetooth (五)接电话与听音乐

    前段时间似乎所有的事情都赶在一起 xff0c 回家 集体出游 出差 xff0c 折腾了近一个月 xff0c 终于算暂时清静了 xff0c 但清静只是暂时 xff0c 估计马上又要出差了 xff0c 所以赶紧把蓝牙这一部分的文章了结下 xff
  • 保研/考研复试-数据结构

    数据结构 1 时间复杂度 xff1a 是一个描述算法性能的函数 xff0c 可以定性的描述算法的运行时间 是评价算法优劣的重要指标 2 快速找到第K个数 1 xff09 可以使用快排的思想 xff0c 因为快排每次可以找到一个第i位置的数
  • Github高效搜索方式

    Github高效搜索方式 文章目录 Github高效搜索方式0 写在前面1 常用的搜索功能1 1 直接搜索1 2 寻找指定用户 大小的仓库1 3 搜索仓库1 4 查找特定star范围的仓库1 5 查找指定主题1 6 查找仓库语言1 7 搜索
  • 电子游戏销售之缺失值检测与处理

    电子游戏销售之缺失值检测与处理 文章目录 电子游戏销售之缺失值检测与处理 0 写在前面 1 数据缺失值预处理 1 1 表的形状 1 2 原始数据每个特征缺失和非缺失的数目 1 3 每个特征缺失的率 1 4 处理后各特征缺失值的数目 1 5
  • 电子游戏销售之回归模型与数据可视化

    电子游戏销售之回归模型与数据可视化 文章目录 电子游戏销售之回归模型与数据可视化0 写在前面1 回归模型1 1 模型建立准备1 2 建立模型1 3 模型分析 2 数据可视化3 参考资料 0 写在前面 该篇文章的任务包括以下3个方面 检测与处
  • 基于R的Bilibili视频数据建模及分析——预处理篇

    基于R的Bilibili视频数据建模及分析 预处理篇 文章目录 基于R的Bilibili视频数据建模及分析 预处理篇0 写在前面1 项目介绍1 1 项目背景1 2 数据来源1 3 数据集展示 2 数据预处理2 1 删除空数据2 2 增加id