0% encontró este documento útil (0 votos)
52 vistas8 páginas

Análisis de Sentimientos en Tweets

Cargado por

milton.tipan.4b
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
52 vistas8 páginas

Análisis de Sentimientos en Tweets

Cargado por

milton.tipan.4b
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd

Proyecto Final

Tratamiento de Datos
Explicación del proyecto

Diapositiva de análisis de proyecto 2


El proyecto final es un caso práctico en procesamiento de datos de la red social Twitter para con
ello realizar un modelo de análisis de sentimiento. Para ello, deberán descargarse los datos de la
fuente indicada más adelante en esta presentación.
La explicación de cómo hacer el análisis, procesar los datos y finalmente realizar el modelo de
análisis de sentimiento se explican a continuación.

Formato de entrega de los ejercicios


La entrega de la práctica se realizará mediante una tutoría. Las condiciones de entrega de la
práctica son las siguientes:

OBLIGATORIO: Archivo .py o .ipynb con el código desarrollado en la práctica. Si se desea, se


puede realizar una memoria sobre la práctica implementada haciendo uso de la plantilla disponible
en Recursos. Es importante que el código esté documentando o que en su defecto, se
incluya un archivo explicando el código y las decisiones realizadas.

OPCIONAL: Archivo .html resultante de guardar los notebooks (si se realizan) como .html.
Si se hace entrega de más de un archivo, se deberán entregar desde un archivo comprimido .zip
o .rar.
Explicación del proyecto

Diapositiva de
Se van a plantear dos problemas
de Twitter utilizando Python.
análisis de
para ilustrar un análisis deproyecto 2
datos sobre información procedente

Ejercicio 1
Descarga los datos en los siguientes enlaces:
• Tweets.txt
• Sentimientos.txt

Dado un archivo que contiene en cada línea una palabra o conjunto de palabras seguido de un
valor numérico, denominado “sentimiento”, y un conjunto de tweets, se pide calcular para cada
tweet un valor denominado “sentimiento del tweet”, que se obtiene como la suma de los
“sentimientos” de los términos que aparecen en el tweet.

Obsérvese que:
• Cada línea del fichero Tweets.txt contiene una cadena JSON.
• No todas las líneas del archivo Tweets.txt contiene tweets.
• Cada tweet es representado por una cadena en formato JSON en la que el tweet es almacenado
en la clave text. Un fragmento se puede ver en la siguiente diapositiva
Fragmento del archivo JSON

Para procesar el archivo hay que tener en cuenta que cada palabra o conjunto de palabras están separadas de
su valor mediante el carácter “\t”. El archivo podría almacenarse en un diccionario usando el siguiente trozo de
código
Explicación del proyecto

Diapositiva
Algunas notas: de análisis de proyecto 2
• Como resultado, se debe mostrar por pantalla (print) un valor numérico en cada línea que
represente el “sentimiento” de un tweet.
• No todos los tweets que se van a considerar tienen contenido, por lo que hay que filtrar aquellos
que tienen de los que no tienen.
• El programa tendrá 2 parámetros de entrada: el archivo que contiene los sentimientos de los
términos y el archivo que contiene los tweets. Estos parámetros se pueden leer como input
desde el teclado, directamente en el código o como parámetros con sys.args.

Ejemplo
Si se toma como referencia el siguiente tweet:
I will go on vacation to the beach.
Supongamos que las siguientes palabras aparecen en el archivo de sentimientos:
vacation: 2
beach: 1
Ya que el resto de palabras no se encuentran en el archivo de sentimientos, tendríamos un
sentimiento del tweet de (2+1) = 3 y, por lo tanto, tendríamos la siguiente salida del programa:
EL SIGUIENTE TWEET: 'I will go on vacation to the beach' TIENE UN SENTIMIENTO ASOCIADO DE: 3
Explicación del proyecto

Diapositiva
Ejercicio 2 de análisis de proyecto 2
Dado un archivo que contiene en cada línea una palabra o conjunto de palabras seguido de un
valor numérico denominado “sentimiento” y un conjunto de tweets, se pide calcular el sentimiento
de aquellas palabras o conjunto de palabras que no tienen un valor asociado en el archivo de
“sentimientos”. Se pueden seguir distintas estrategias para asignar un valor. Por ejemplo, se podría
asignar como valor el valor del “sentimiento” del tweet en que se encuentra la palabra o conjunto
de palabras sin valor, o el valor medio del “sentimiento” del tweet.

Algunas notas:
• Como resultado se debe mostrar por pantalla en cada línea, una palabra o conjunto de palabras
y a continuación un valor numérico que represente el “sentimiento” de dicha palabra o conjunto
de palabras. Solo se mostrarán la palabra o conjunto de palabras que no aparecían con un valor
en el archivo original.
• No todos los tweets que se van a considerar tienen contenido, por lo que hay que filtrar aquellos
que tienen de los que no tienen.
• El programa tendrá 2 parámetros de entrada: el archivo que contiene los sentimientos de los
términos y el archivo que contiene los tweets.
Explicación del proyecto

Ejemplo
Si se toma como referencia el tweet anterior:
•I will go on vacation to the beach.
Sabemos que las palabras 'vacation' y 'beach' ya tienen un valor asociado en el archivo de sentimientos; por lo tanto, tenemos
que actualizar el sentimiento del resto de palabras. Podríamos hacerlo de dos formas:
Versión 1, asignando el valor del sentimiento del tweet (3) a las palabras:
•'I': 3
•'will': 3
•'go': 3
•'on': 3
•'vacation': No mostramos esta palabra, dado que tiene un sentimiento ya asociado anteriormente.
•'to': 3
•'the': 3
•'beach': No mostramos esta palabra, dado que tiene un sentimiento ya asociado anteriormente.
Versión 2, asignando la media del valor del tweet, siendo esta media el número de palabras del tweet dividido
entre el valor de sentimiento del tweet; el tweet de ejemplo tiene 8 palabras, por lo tanto, 8 ÷ 3 = 2.66.
•'I': 2.66
•'will': 2.66
•'go': 2.66
•'on': 2.66
•'vacation': No mostramos esta palabra, dado que tiene un sentimiento ya asociado anteriormente.
•'to': 2.66
•'the': 2.66
•'beach': No mostramos esta palabra, dado que tiene un sentimiento ya asociado anteriormente.
Suerte!!

También podría gustarte