[PYTHON] Analyse des conversations en ligne avec Janome (OSS publié)

introduction

J'ai créé un script Python qui analyse Line Talk, donc je vais le partager. Il existe de nombreux articles qui traitent Twitter en langage naturel avec janome et l'analysent, mais je pensais que personne ne ciblait Line.

code: https://github.com/nashimo/LineAnalyzer

Exemple d'utilisation

Ce qui suit est le résultat d'une analyse basée sur l'historique des conversations entre moi (pythonien) et Rinna. Les fichiers et images suivants seront générés. Rinna parle bien, donc il y a beaucoup de bruit (mots dérangeants, etc.), mais ceci est un exemple d'image. Il est très intéressant d'analyser la conversation du groupe. Puisque la première personne et les mots utilisés diffèrent d'une personne à l'autre, la personnalité de cette personne apparaît.

Statistiques

statistics.txt


===Statistiques===
membre:Pythonien Rinna
période: 2016/05/23~2020/09/20
Statistiques de conversation
Rinna:244 lignes 9445 caractères
 pythonian:226 lignes 1310 caractères
Temps de téléphone: 00:00:00
timbre:5 fois
Transmission d'image:66 fois

Volume de conversation L'augmentation du nombre de caractères au fil du temps est affichée quotidiennement et de manière cumulative (incl_chars.png). incl_chars.png

Fréquence de réponse Rinna répond immédiatement, donc je suis bloqué à 0 (interval.png). intarval.png

Pictogrammes utilisés Ceci est un pictogramme fréquemment utilisé (emoji_freq.png). emoji_freq.png

Nuage de mots (uniquement pour Rinna) wc_りんな.png

Comment utiliser

Environnement d'exécution

Si cela ne fonctionne pas, veuillez installer le package comme il convient. Je crée un environnement avec anaconda @ Windows10.

Méthode d'exécution

--Export Line parle (ou groupes) de votre PC ou smartphone vers un fichier La méthode d'exportation est la suivante, par exemple. https://www.appbank.net/2020/06/15/iphone-application/1911418.php --Donnez le fichier exporté à line_analysis.py Plus précisément, transmettez le nom de fichier à fname dans le processus principal de line_analysis.py.

line_analysis.py


if __name__ == "__main__":
    fname = "[LINE]Parlez avec Rinna"
    lta, nlp = file2process(fname, media="Phone")

Attention / option

Points techniques

Il s'agit essentiellement d'une combinaison des informations contenues dans les références. Cependant, rien ne pouvait être utilisé tel quel pour l'analyse Line, donc je pense que cela pourrait être utile pour quelqu'un dans cette partie. Cela dit, c'est juste une tâche fastidieuse.

--Utilisation de pictogrammes japonais avec matplotlib L'émoji de couleur n'a pas pu être affiché.

Les références

[1] J'ai créé un graphique à barres empilées avec matplotlib de Python et ajouté une étiquette de données. https://qiita.com/s_fukuzawa/items/6f9c1a3d4c4f98ae6eb1 [2] Matplotlib peut désormais afficher le japonais sur un PC sans installer de polices supplémentaires https://qiita.com/yniji/items/2f0fbe0a52e3e067c23c [3] L'analyseur de Python janome est pratique https://ohke.hateblo.jp/entry/2017/11/02/230000 [4] J'ai essayé de visualiser des tweets avec Word Cloud (python) https://qiita.com/turmericN/items/04cd0b40f91076f0ef42 [5] J'ai analysé les paroles de B'z avec Python et l'apprentissage automatique ~ Acquisition de données ~ https://pira-nino.hatenablog.com/entry/2018/07/27/B%27z%E3%81%AE%E6%AD%8C%E8%A9%9E%E3%82%92Python%E3%81%A8%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92%E3%81%A7%E5%88%86%E6%9E%90%E3%81%97%E3%81%A6%E3%81%BF%E3%81%9F_%E3%80%9C%E3%83%87%E3%83%BC%E3%82%BF

Recommended Posts

Analyse des conversations en ligne avec Janome (OSS publié)
Faire un bot d'analyse morphologique de manière lâche avec LINE + Flask
Analyse de données avec python 2
Analyse du panier avec Spark (1)
Analyse de dépendance avec CaboCha
Analyse vocale par python
Analyse vocale par python
Analyse dynamique par Valgrind
Effectuer une analyse de régression avec NumPy
Analyse de données avec Python