J'ai essayé d'analyser la carte du Nouvel An par moi-même en utilisant python

Motivation pour le développement

Cartes du Nouvel An envoyées chaque année ... Lorsque j'organisais ma chambre, j'ai reçu beaucoup de cartes du Nouvel An de mes seniors et juniors. Je me suis demandé si cela pouvait être utile.

Ensuite, j'ai eu l'idée que je pouvais me visualiser comme vu par les autres à travers la carte du Nouvel An. Je me suis demandé si la soi-disant auto-analyse pouvait être faite par le biais de la carte du Nouvel An.

À bien y penser, quand j'écris à une autre personne, j'écris avec les impressions et les épisodes de cette personne de l'année dernière. Je me suis demandé si c'était la même chose pour les autres.

Vous devriez pouvoir extraire votre impression de vous-même en analysant morphologiquement la carte du Nouvel An ... Je voulais en faire un nuage de mots et visualiser mon impression des autres.

Comment faire

Tapez le texte de la première carte du Nouvel An (saisie de données)

Tout d'abord, nous devons collecter les données à analyser, nous allons donc résumer le contenu de la carte du Nouvel An dans Excel.

messageImage_1585488373040.jpg

Comme ça, je suis entré sans les salutations ridicules de Happy New Year et Kotoyoro. Autant que possible, j'ai essayé de n'entrer que des mots liés à mes impressions et épisodes.

2 Rassemblez les données

Ensuite, combinez l'Excel entré en une seule donnée

python


import xlrd

wb = xlrd.open_workbook('/nenga2020.xlsx')
sheet = wb.sheet_by_name('Sheet1')
col_values = sheet.col_values(0)
text=""
for i in col_values:
    text=text+i
print(text)

Cela signifie que le texte contient tout le texte de la carte du Nouvel An.

3 Analyse morphologique et création de nuage de mots

Enfin, l'analyse morphologique et la création de nuages de mots se font à partir d'ici.


import MeCab
import wordcloud, codecs

m = MeCab.Tagger("")
text = text.replace('\r', '')
parsed = m.parse(text)

splitted = ' '.join(
    [x.split('\t')[0] for x in parsed.splitlines()[:-1] if x.split('\t')[1].split(',')[0]  in ["nom","adjectif","Verbe adjectif"] ])

wordc = wordcloud.WordCloud(font_path='HGRGM.TTC',
                            background_color='white',
                            contour_color='steelblue',
                            contour_width=2).generate(splitted)
wordc.to_file('nenga2020.png')

Cela résoudra l'impression écrite sur la carte du Nouvel An.

python


splitted = ' '.join(
    [x.split('\t')[0] for x in parsed.splitlines()[:-1] if x.split('\t')[1].split(',')[0]  in ["nom","adjectif","Verbe adjectif"] ])

À propos, les parties sont réduites à la nomenclature, aux adjectifs et aux verbes adjectifs. C'est parce que le but est d'extraire mon impression.

Résumé

Code entier

import xlrd
import MeCab
import wordcloud, codecs


wb = xlrd.open_workbook('/nenga2020.xlsx')
sheet = wb.sheet_by_name('Sheet1')
col_values = sheet.col_values(0)
text=""
for i in col_values:
    text=text+i

m = MeCab.Tagger("")
text = text.replace('\r', '')
parsed = m.parse(text)

splitted = ' '.join(
    [x.split('\t')[0] for x in parsed.splitlines()[:-1] if x.split('\t')[1].split(',')[0]  in ["nom","adjectif","Verbe adjectif"] ])

wordc = wordcloud.WordCloud(font_path='HGRGM.TTC',
                            background_color='white',
                            contour_color='steelblue',
                            contour_width=2).generate(splitted)
wordc.to_file('nenga2020.png')

Et voici le nuage de mots complet pour l'auto-analyse. nenga2020_qujita.png

J'ai reçu beaucoup de cartes du Nouvel An du club de Kendo, donc il y a beaucoup de mots liés ...

Des mots tels que drôle, compétent et respect sont considérés comme mes impressions des autres.

Recommended Posts

J'ai essayé d'analyser la carte du Nouvel An par moi-même en utilisant python
J'ai essayé d'utiliser le module Datetime de Python
J'ai essayé Web Scraping pour analyser les paroles.
[Python] J'ai essayé d'analyser le lanceur qui n'a réussi aucun coup, aucune course
Qiita Job J'ai essayé d'analyser le travail
J'ai essayé de rationaliser le rôle standard des nouveaux employés avec Python
Django super introduction par les débutants Python! Partie 3 J'ai essayé d'utiliser la fonction d'héritage de fichier de modèle
Django super introduction par les débutants Python! Partie 2 J'ai essayé d'utiliser les fonctions pratiques du modèle
J'ai essayé d'obtenir et d'analyser les données statistiques de la nouvelle Corona avec Python: données de l'Université John's Hopkins
[Python] J'ai essayé de juger l'image du membre du groupe d'idols en utilisant Keras
J'ai essayé d'utiliser la bibliothèque Python "pykakasi" qui peut convertir des kanji en romaji.
J'ai essayé de prédire l'évolution de la quantité de neige pendant 2 ans par apprentissage automatique
J'ai essayé d'envoyer automatiquement la littérature du nouveau virus corona à LINE avec Python
J'ai essayé de représenter graphiquement les packages installés en Python
J'ai essayé de toucher un fichier CSV avec Python
J'ai essayé de résoudre Soma Cube avec python
[Python] J'ai essayé de représenter graphiquement le top 10 des ombres à paupières
J'ai essayé de résoudre le problème avec Python Vol.1
J'ai essayé d'identifier la langue en utilisant CNN + Melspectogram
J'ai essayé d'accéder aux feuilles de calcul Google en utilisant Python
J'ai essayé de compléter le graphe de connaissances en utilisant OpenKE
J'ai essayé de compresser l'image en utilisant l'apprentissage automatique
J'ai essayé de résumer les opérations de chaîne de Python
[Introduction] J'ai essayé de l'implémenter moi-même tout en expliquant l'arbre de dichotomie
Python pratique 100 coups J'ai essayé de visualiser l'arbre de décision du chapitre 5 en utilisant graphviz
[Introduction] J'ai essayé de l'implémenter moi-même tout en expliquant pour comprendre la dichotomie
J'ai essayé de trouver l'entropie de l'image avec python
J'ai essayé de simuler la propagation de l'infection avec Python
J'ai essayé d'analyser les émotions de tout le roman "Weather Child" ☔️
J'ai essayé d'utiliser la bibliothèque Python de Ruby avec PyCall
J'ai essayé de simuler l'optimisation des publicités à l'aide de l'algorithme Bandit
[Python] J'ai essayé de visualiser la relation de suivi de Twitter
J'ai essayé d'implémenter la fonction d'envoi de courrier en Python
[TF] J'ai essayé de visualiser le résultat de l'apprentissage en utilisant Tensorboard
Notes diverses sur l'utilisation de python pour les projets
[Python] J'ai essayé de collecter des données en utilisant l'API de wikipedia
J'ai essayé d'énumérer les différences entre java et python
J'ai fait un chronomètre en utilisant tkinter avec python
J'ai essayé de changer le script python de 2.7.11 à 3.6.0 sur Windows10
J'ai essayé d'analyser les données scRNA-seq en utilisant l'analyse des données topologiques (TDA)
J'ai essayé d'approcher la fonction sin en utilisant chainer (re-challenge)
J'ai essayé d'implémenter le blackjack du jeu Trump en Python
J'ai essayé de sortir le journal d'accès au serveur en utilisant Node.js
Django super introduction par les débutants Python! Partie 6 J'ai essayé d'implémenter la fonction de connexion
J'ai essayé de toucher Python (installation)
J'ai essayé de créer une API RESTful en connectant l'API rapide du framework Python explosif à MySQL.
J'ai essayé de classer le nombre de décès par habitant de COVID-19 (nouveau virus corona) par pays
J'ai essayé d'utiliser Thonny (Python / IDE)
J'ai essayé de prédire l'infection d'une nouvelle pneumonie en utilisant le modèle SIR: ☓ Wuhan edition ○ Hubei province edition
J'ai essayé de déplacer le ballon
J'ai essayé d'utiliser l'API checkio
J'ai essayé d'estimer la section.
J'ai essayé de résoudre l'édition du débutant du livre des fourmis avec python
J'ai essayé d'obtenir l'index de la liste en utilisant la fonction énumérer
J'ai essayé de créer une expression régulière de "montant" en utilisant Python
J'ai essayé de visualiser l'ensemble de données de préférence de boisson par décomposition tenseur.
J'ai essayé de créer une expression régulière de "date" en utilisant Python