Смотрите аниме "Борен Чуан - Новая Эра Наруто" через комментарии 2W

рептилия
Смотрите аниме "Борен Чуан - Новая Эра Наруто" через комментарии 2W

написать впереди

Японская телевизионная анимацияБОРУТО - Наруто нового поколения"(Название в переводе с материкового Китая "Биография Борена: Новая эра Наруто") адаптировано из оригинальной работы Кисимото Киши, под руководством, отредактировано и написано Икемото Мичио, а написано Котачи Укё. Это манга с таким же названием. .《火影忍者》Продолжение сериала о сыне Наруто Узумаки после окончания оригинальной истории.漩涡博人приключенческая история. Дальнейший сюжет мультфильма дополнит театральную версию «Наруто в кино: Легенда о Боруто», сценарий к которой написал Масаси Кисимото.

Анимация производится Studio Pierrot (Joker Club), как и предыдущие работы «Наруто» и «Наруто Шиппуден». время:2017年4月5日起每周三16:55在东京电视台系列首播

在这里插入图片描述

Вышеупомянутый контент скопирован из энциклопедии Baidu~ Ха-ха-ха, мы в основном занимаемся анализом данных, сканированием данных, зайдите в мой блог серии краулеров, чтобы увидеть, есть соответствующие учебные пособия.

анализ данных

В качестве данных комментариев мы сохраняем эти данные для использования в будущем.

    author # 作者
    content # 评论内容
    ctime = # 评论时间
    disliked # 不喜欢人数
    liked # 喜欢
    likes # 奇怪???
    score # 打分
    user_season # 在第几集打的分数

1. Чистые данные

Основной шаг здесь.Прежде чем анализировать данные, нам нужно выполнить некоторую обработку данных, оценку нулевого значения, изменение формата времени и т. д. Эта часть может измениться в соответствии с фактическими потребностями.

import numpy as np
import pandas as pd
import datetime


# 数据读取
def read_csv():
    file = pd.read_csv("./bore.csv",header=None,names=["author","content","ctime","disliked","liked","likes","score","user_season"])
    return file

# 数据清洗
def clear_data():
    df = read_csv()
    #print(any(df.duplicated())) # 判断数据是否有重复
    #print(df.head())
    #print(df.isnull().any())  # 判断是否有空列
    #print(df[df.isnull().values==True])   # 检测空值 
    data = df.fillna(0)  # 空值填充 

    # 时间处理
    def get_localtime(data):
        time =  datetime.datetime.fromtimestamp(data['ctime']).strftime("%Y-%m-%d")
        return pd.to_datetime(time)
    df["ctime"]=df.apply(get_localtime,axis = 1)  # apply 的使用 
    
    return df

# 数据分析1
def analsis1(data):
    print(data["author"].describe())

if __name__ == '__main__':
    df = clear_data()
    analsis1(df)

2. Человек с наибольшим количеством комментариев?

Посмотрите, у кого больше всего комментариев к этому аниме, этот код очень прост, просто обратитесь к коду ниже..describe()функция

def analsis1(data):
    print(data["author"].describe())
count     18535  # author总数
unique    18535 # 去除重复之后的总数
top        你的盛世   
freq          1
Name: author, dtype: object

Удивительно, что никто не прокомментировал больше, чем2Этот вывод может означать только то, что станция B разрешает видеокомментарии только один раз? ! Что касается механизма, то я хотел его опробовать, но получил оплеуху, а у меня даже разрешения не было.

※У вас нет разрешения※

3. Человек с наибольшим количеством комментариев?

В данных есть расположение оценок, так что давайте посмотрим на гистограмму оценок! Данные показывают, что 1 звезда и 5 звезд больше, а двухуровневая дифференциация более серьезна.

在这里插入图片描述

Чтобы убедиться, что китайский дисплей нормальный, вам нужно сначала настроить шрифт по умолчанию и настроить его.matplotlibстиль

import numpy as np
import pandas as pd
import datetime
import matplotlib.pyplot as plt
import matplotlib.style as psl

psl.use('seaborn-darkgrid')
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False
  1. Статистика группыscoreScore, use groupby(by="field name").size() # Получить число
  2. reset_index(drop=True) # сбросить индекс
  3. plt.bar # Используется для создания гистограммы
  4. plt.text() # генерировать текст
def analsis2(data):
    # 文章打分的柱状图
    score = data["score"].groupby(data["score"]).size()

    score = score.reset_index(drop=True)
    x_index = np.arange(1,6).tolist()

    plt.bar(x_index,score.values,0.4,color="#03a9da")
    # 绘制文字
    for xx,yy in zip(x_index,score.values):
        plt.text(xx,yy+0.2,str(yy),ha="center",fontsize = 10)

    plt.title("用户评星图表")  # 设置标题
    plt.xlabel("评星")  # 设置x轴标识
    plt.ylabel("人数")  # 设置y轴标识
    plt.show()

Если вы напишете следующий код

plt.barh(x_index, score.values, 0.4, color="#03a9da")  

Вы получите горизонтальную гистограмму.

4. Распределение комментариев по времени

Судя по данным, количество комментариев во вторник, четверг и субботу увеличилось, что является очень интересными данными.

在这里插入图片描述

# 通过星期判断评论次数
def analysis3(data):
    data.set_index(data["ctime"],inplace=True)
    weeks = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]
    def get_weekday(data):
        return weeks[data["ctime"].weekday()]
    data["week"] = data.apply(get_weekday,axis=1)
    week_data = data.groupby(by="week")["author"].size()

    plt.bar(weeks,week_data.values,0.5,color="green")
    plt.show()

5. Некоторые отношения, раскрытые в месяц комментариев

Мы увидели, что данные внезапно увеличились в июле 2018 года. Какой скрытый секрет скрывается за этим? Давайте продолжим чтение. !

在这里插入图片描述

def analysis4(data):
    data.set_index(data["ctime"], inplace=True)
    data = data.resample("M").count()["author"]  # 按照月份汇总数据
    data = data.to_period("M")  # 显示数据
    x = np.arange(0,len(data),1)

    fig = plt.figure(figsize=(6, 4))
    ax = fig.add_subplot(111)

    '''
    fig = plt.figure()
    ax2 = fig.add_subplot(212)
    '''

    ax.plot(x,data.values,"#03a9f4",marker="o",markersize=4)
    ax.set_xticks(x)  # 设置x轴标签为自然数序列
    ax.set_xticklabels(data.index)  # 更改x轴标签值为年份
    plt.xticks(rotation=60)  # 旋转90度,不至太拥挤

    plt.title('博人传评论数量变化(201709-201812)', color="#03a9f4", fontsize=12)
    plt.xlabel("月份")
    plt.ylabel('评论数量')
    plt.tight_layout()  # 自动控制空白边缘


    plt.show()

фильтр2018年7月份的数据出来, Выяснилось, что 20 июля 2018 года был пик комментариев, после детального анализа посмотрим на данные.

在这里插入图片描述

Увидев эти данные, хотя я и не смотрел Бо Ренчжуана, я знаю, что 65 серий должны быть хорошими, и очень вероятно, что эта серия будет обновлена ​​20 июля. Любопытные, или вы фанаты Наруто, Вы можете посмотреть этот эпизод~! Я перешел к комментариям и процитировал закрепленный комментарий

	本集是值得国人观众特别期待的一集,因为这一话(第65集)是由国人原画师黄成希全权负责的,
	他一个人包揽了本集的分镜/演出/作画导演等主要工作。
	换而言之,黄成希作为中国画师获得了本集的作监资格。这在火影忍者开播16年以来是史无前例的。
	十几年前,黄成希在火影忍者刚刚开播时,也和多数人一样仅仅只是屏幕前的看客,
	但是这部作品对学生时代的他施加了巨大的影响,最终促使黄成希走上了成为动画画师的道路。
	在2012年加入日本动画行业后,他如愿以偿成为了火影忍者的主力原画之一,并参与作画监督的工作。
	除此之外他还先后加入过包括黑子的篮球、妖怪手表和刀剑神域剧场版等多部作品的制作,
	实力得到了业内的认可,因此才最终获得了独自扛下重要打斗回的资格,如此说来也算是圆梦成功。
	由于本集几乎是黄成希的个人秀,再加上这一话中大筒木桃式使用了漫画版而不是剧场版中的新形象,
	因此黄成希在作画上自由发挥的空间就变得很大,这就有余地在打斗中融入太极和咏春等中国传统武术了。
	所以大伙看到一连串的“中国功夫”也别觉得奇怪哈~
	说起来,大筒木一族本身就有一股浓厚的道家派头,他们不仅历史悠久,文明程度远远超越这个世界的人,
	而且全族都在种灵根,吃仙桃,修金丹,求长生不老。现在再配合一整套中国武学架子,
	简直给人一种徐福手下三千童男童女入蓬莱求仙药的即视感...将来出一个徐福式的修仙族长也是极好的!(大误)


	黄成希在博人传中的几段作画(可能有遗漏):
	博人vs木叶丸
	博人vs花火
	博人vs鵺
	小樱vs信
	巳月vs尸澄真

在这里插入图片描述

def analysis5(data):
   data = data.set_index('ctime')  # 将时间作为索引
   data = data["2018-07-01":"2018-08-01"]
   child_data = data.resample("D").count()["content"]
   print(child_data.to_period("D"))

   data = data['2018-07-20':"2018-07-20"]
   print(data["content"])

6. Эпизоды с наибольшим количеством комментариев

На самом деле, с приведенным выше анализом мы уже знаем, что 65 серий должны быть наиболее комментируемыми, но нам еще нужно посмотреть на данные.

def analysis6(data):
    data = data.groupby(by="user_season").size()
    data = data.sort_values(ascending=False)
    print(data.head())

Нет проблем, 65 серий надо посмотреть

Эпизод количество комментариев
65 4338
40 985
39 658
66 502
68 494

В конце планирую сделать текстовую карту, а потом подумаю в следующий раз.Данные и исходники "Биографии Борена" написаны для всех~

Одна звезда за чувства, одна звезда за 65 серий