¡Douban 9.2! ¡170.000 pantallas de balas te dicen por qué "La verdad silenciosa" tiene una gran reputación!

 Producido por CDA Data Analyst  

Autor: Mika

Datos: Zhenda  

[Guía] Hoy, te enseñaré a usar Python para analizar 170.000 bombardeos de "The Silent Truth". Han pasado menos de 2 meses desde que se proyectó el último drama de conciencia doméstica "The Hidden Corner". El "Bald Terrier" y "Mountain Terrier" aún están frescos. Luego vino otro exitoso drama doméstico, y ese fue "The Silent Truth", que recientemente había estallado en el boca a boca.

 También es del "Mist Theatre" de iQiyi para sketches de suspenso. "La verdad del silencio" es una adaptación de la novela de Zijin Chen "Una noche larga es difícil de ver" y le dice al fiscal Jiang Yang, quien ha pasado muchos años investigando la verdad del caso. historia.

El día de la transmisión, "The Silent Truth" obtuvo 8.8 puntos en Douban. Con la transmisión de la serie, la reputación de la serie fue imparable, y llegó hasta el final. Después de seis episodios, Douban obtuvo 9.2 puntos, superando con éxito su ola anterior. El rincón escondido. Sabes, esta tendencia de conducir alto y caminar alto es muy poco común en los dramas domésticos.

Muchos internautas no creían que llorarían al comienzo del programa, pero cuando vieron el final, se dieron cuenta de que esto es demasiado bueno para llorar. Ver la luz vivificante del protagonista Jiang Yang, realmente hace que la gente llore en Lanzhou Ramen ...

Entonces, ¿por qué esta "Verdad silenciosa" es tan popular? ¿Por qué es el final anual del drama nacional? Hoy usaremos Python para explicártelo.

01, Douban 9.2 puntos! Más allá de la ola frontal "La esquina oculta"

El último conocido como el drama nacional de éxito anual fue "The Hidden Corner", adaptado de la novela de misterio de Zijin Chen, "Bad Child". "The Hidden Corner" fue transmitido con "Little White Boat". "Mountain Terrier" y "Bald Terrier" estuvieron animados todo el verano.

Más de 780.000 personas han anotado en Douban, y la puntuación final es de 8,9, que es un resultado muy sorprendente.

Inesperadamente, en los últimos 2 meses, otro drama de suspenso "The Silent Corner" se ha hecho popular con su reputación contra el cielo. También fue una adaptación de la novela "Una noche larga es difícil de saber" del autor Zi Jin Chen, y obtuvo 8.8 puntos cuando Douban comenzó a transmitir. A medida que los puntajes de transmisión son cada vez más altos, más de 200,000 personas lo han calificado, con un puntaje de 9.2, que ha superado la ola anterior de "The Hidden Corner".

Análisis de puntuación general de Douban

Después de analizar más a fondo las calificaciones de la audiencia, encontramos que:

 El 92,8% de la audiencia dio una puntuación perfecta de cinco estrellas, que ha alcanzado un nivel de referencia en los dramas nacionales.

Nube de Word de comentario corto de Douban

Luego veremos la nube de palabras de comentarios cortos de Douban.

Podemos ver que el más comentado por la audiencia en el breve comentario es el protagonista "Jiang Yang", su firmeza y perseverancia son realmente impresionantes. Las "habilidades de actuación del actor", "la trama" y el grado de restauración de la "obra original" han sido ampliamente reconocidos y elogiados.

 02. ¿Qué son las 170.000 pantallas de balas en el drama "La verdad silenciosa"?

Entonces, ¿de qué estás hablando cuando estás haciendo el programa? A continuación, usamos Python para analizar el aluvión de videos de los primeros 10 episodios de "The Silent Truth", totalizando 173,226.

Los primeros diez episodios de tendencias de bombardeo

Como puede ver en la imagen, a todo el mundo le encanta publicar bombardeo cuando ve un drama. Los primeros diez episodios: el mayor número de bombardeo es el episodio 9, 3 y 10 respectivamente . El número máximo de bombardeo en un episodio es 18.903. El sexto episodio tiene el menor bombardeo, con 15.561 bombardeos.

Luego miramos la nube de palabras de los personajes principales de la obra:

Nube de palabras de Jiangyang Barrage

Jiang Yang, interpretado por Bai Yu, era originalmente joven y prometedor, pero para buscar la verdad y persistir en la justicia, dio su vida. Cosas como "justicia", "excelente", "actuación", etc. aparecen con frecuencia en la nube de palabras.

 Nube de palabras de Li Jing Barrage

En cuanto a Li Jing, interpretada por Tan Zhuo, mucha gente pensaría en su papel de Concubine Gao en "La historia del Palacio Yanxi" en el drama. Ya sea de "Gao Guifei" a Liu Sihui en "No soy el Dios de la Medicina", o esta vez, Li Jing, las habilidades de actuación de Tan Zhuo son obvias para todos.

Nube de palabras de Yanliang Barrage

Desde el comienzo del anuncio oficial del actor Liao Fan, muchos espectadores dijeron que tenían que ver "The Silent Truth" para Liao Fan. Como se esperaba, tan pronto como se transmitió el episodio, los fanáticos lo elogiaron como un "producto exento".

Nube de palabras de Zhang Chao Barrage

El maestro Ning Li, quien interpreta a Zhang Chao, es un viejo amigo del Fog Theatre. El social "Brother Toyota" que interpretó en "Proof of Innocence" no es muy despiadado. "Reverse smoking" es demasiado popular. De "Crímenes indocumentados" a "El rincón escondido" y luego a "La verdad silenciosa", Yan Liang ha cambiado a tres personas: en realidad es Yan Liang que fluye y Li Fengtian en apuros .

03. Enseñarle a analizar el bombardeo con Python

Utilizamos Python para obtener y analizar los datos del bombardeo de los primeros diez episodios de "The Silent Truth" de iQIYI. Todo el proceso de análisis de datos se divide en las siguientes tres partes:

  1. Adquisición de datos de bombardeo
  2. Lectura de datos y procesamiento simple.
  3. Análisis de visualización de datos

1. Adquisición de datos

El programa de adquisición de datos de bombardeo de iQiyi se explicó en el artículo anterior.

2. Lectura y procesamiento previo de datos

Primero importe los paquetes requeridos, donde pandas se usa para la lectura y el procesamiento de datos, os se usa para operaciones de archivos, jieba se usa para la segmentación de palabras chinas y pyecharts y stylecolud se usan para visualización de datos.

# 导入 库
import os   
import jieba 
import pandas as pd  

from pyecharts.charts import Bar, Pie, Line, WordCloud, Page 
from pyecharts import options as opts  
from pyecharts.globals import SymbolType, WarningType WarningType.ShowWarning 
= False 

import stylecloud 
de IPython.display importar imagen

Almacene los datos rastreados en la carpeta de datos, use la operación del sistema operativo para obtener la lista de archivos csv que deben leerse y lea los archivos en un bucle.

# 读 入 数据
data_list = os.listdir ('../ data /') 

df_all = pd.DataFrame () 

para i en data_list: 
    if i.endswith ('csv'): 
        df_one = pd.read_csv (f '.. / data / {i} ', engine =' python ', encoding =' utf-8 ', index_col = 0)   
        df_all = df_all.append (df_one, ignore_index = False) 

print (df_all.shape) 
(173226, 6)

Hay un total de 173226 bombardeos, obtenga una vista previa de los datos:

df_all ['nombre'] = df_all.name.str.strip ()  
df_all.head () 

3. Visualización de datos

——Número de bombardeos de diversidad

Explicación del código:

repl_list = { 
    'El primer episodio': 1, 
    'El segundo episodio': 2, 
    'El tercer episodio': 3, 
    'El cuarto episodio': 4, 
    'El quinto episodio': 5, 
    'El sexto episodio': 6 , 
    'Episodio siete': 7, 
    'Episodio ocho': 8, 
    'Episodio nueve': 9 , 'Episodio 
    diez': 10 
} 

df_all ['episodios_num'] = df_all ['episodios']. Map (repl_list )  
df_all.head () 

# Generar datos 
danmu_num = df_all.episodios_num.value_counts () 
danmu_num = danmu_num.sort_index () 
x_data = ['第' + str (i) + '集' para i en danmu_num.index] 
y_data = danmu_num.values.tolist ()  

# Gráfico de barras 
bar1 = Bar (init_opts = opts.InitOpts (width = '1350px', height = '750px')) 
bar1.add_xaxis (xaxis_data = x_data) 
bar1.add_yaxis ('', y_axis = y_data) 
bar1.set_global_opts ( title_opts = opts.TitleOpts (title = 'Gráfico de tendencia del número de presa de los primeros diez episodios'),  
                     visualmap_opts = opts.VisualMapOpts (max_ = 20000, is_show = False)  
                    ) 
bar1.render () 
x_data = ['第' + str (i) + '集' para i en danmu_num.index] 
y_data = danmu_num.values.tolist ()  

# Gráfico de barras 
bar1 = Bar (init_opts = opts.InitOpts (width = '1350px' , height = '750px')) 
bar1.add_xaxis (xaxis_data = x_data) 
bar1.add_yaxis ('', y_axis = y_data) 
bar1.set_global_opts (title_opts = opts.TitleOpts (title = 'Gráfico de bombardeo de los primeros diez episodios') ),  
                     visualmap_opts = opts.VisualMapOpts (max_ = 20000, is_show = False)  
                    ) 
bar1.render ('../ html / Iqiyi Barrage Trend Chart.html') 

Mapa de nube de word de Barrage role-Jiangyang

 

# Defina la función de segmentación de palabras 
def get_cut_words (content_series): 
    # lea la lista de palabras de parada 
    stop_words = []  

    with open (r "stop_words.txt", 'r', encoding = 'utf-8') como f: 
        lines = f. readlines () 
        para línea en líneas: 
            stop_words.append (line.strip ()) 

    # Agregar palabras clave 
    my_words = ['Liao Fan', 'Yan Liang', 'Baiyu', 'Jiangyang', 'Tan Zhuo', 'Li Jing', 
                'Ning Li', 'Zhang Chao', 'Huang Yao', 'Zhang Xiaoqian', ' 
    Aoli Ge ' 
               ]   
para i en my_words: 
        jieba.add_word (i)  

    # palabras 
    vacías personalizadas my_stop_words = [ 'Realmente', 'este', 'esto es', 'un tipo', 'amable', 'ahhhhh', 'jajaja', 
                     ' 
    Jajajaja ', 'Quiero']     stop_words.extend (my_stop_words)                

    # participio
    word_num = jieba.lcut (content_series.str.cat (sep = '。'), cut_all = False) 

    # 条件 筛选
    word_num_selected = [i for i in word_num if i not in stop_words y len (i)> = 2] 

    return word_num_selected
# Obtener el resultado de la segmentación de palabras 
text1 = get_cut_words (content_series = df_all [df_all.name == '江 阳'] ['content']) 

# Dibujar una 
imagen de nube de palabras stylecloud.gen_stylecloud (text = ''. Join (text1), max_words = 1000, 
                          collocations = False, 
                          font_path = r'C: \ Windows \ Fonts \ msyh.ttc ', 
                          icon_name =' fas fa-heart ', 
                          size = 653, 
                          output_name =' Arrastrar rol de pantalla-Jiangyang word cloud map.png ') 

 

Supongo que te gusta

Origin blog.csdn.net/yoggieCDA/article/details/108822354
Recomendado
Clasificación