Je mène actuellement des activités de recherche sous le thème "Comment profiter de mon travail?" Je pense que je peux obtenir des indices en recueillant des informations de bouche à oreille sur les entreprises, alors je vais contester l'analyse des données!
Passez en revue les précautions de grattage avant de mettre en œuvre. Liste des précautions pour le scraping Web --Qiita
Reportez-vous aux articles suivants pour préparer les outils nécessaires. Fonctionnement automatique complet de Chrome avec Python + Selenium --Qiita
Recueillez les avis sur les sites de changement d'emploi. Le code est ici
Reportez-vous aux articles suivants pour préparer les outils nécessaires. Utilisez mecab sur Mac. --Qiita
Exécutez le code ci-dessous pour partager les avis.
KeitaisoKaiseki.py
# coding: utf-8
import MeCab
mecab = MeCab.Tagger ('-d /usr/local/lib/mecab/dic/mecab-ipadic-neologd')
INPUT_FILE_PATH = "./scraping.csv"
OUTPUT_FILE_PATH = "./mecab.txt"
with open(INPUT_FILE_PATH) as f:
text = f.read()
# mecab.parse('')#Empêcher les chaînes d'être GC
node = mecab.parseToNode(text)
while node:
#Obtenez le mot
word = node.surface
#Obtenir des paroles de partie
pos = node.feature.split(",")[1]
tmp_str = '{0} , {1}\n'.format(word, pos)
with open(OUTPUT_FILE_PATH, mode='a') as f:
f.write(tmp_str)
#Passer au mot suivant
node = node.next
Si cela reste tel quel, tous les mots n'auront aucun sens, comme les mots auxiliaires, alors extrayez les mots de partie qui sont susceptibles d'avoir un sens en tant que mots.
$ grep -e "nom" -e "verbe" -e "adjectif" mecab.txt | grep -v "代nom" | cut -d',' -f 1 > mecab_edited.txt
Le nuage de mots est utilisé pour visualiser la fréquence d'apparition des avis mis en forme. Implémentez en vous référant à l'article suivant.
Text mining avec Python ② Visualisation avec Word Cloud - Qiita
WordCloud.py
# coding: utf-8
from wordcloud import WordCloud
FONT_PATH = "/System/Library/Fonts/Hiragino Kaku Gothic W9.ttc"
INPUT_FILE_PATH = "./mecab_edited.txt"
OUTPUT_FILE_PATH = "./wordcloud.png "
with open(INPUT_FILE_PATH) as f:
text = f.read()
stop_words = ["À partir de l'image de sortie", "Je veux enlever", "Mot", "Veuillez régler"]
wordcloud = WordCloud(background_color="white",
font_path=FONT_PATH,
width=800,height=600,
stopwords=set(stop_words)).generate(text)
wordcloud.to_file(OUTPUT_FILE_PATH)
Puisqu'il y a encore du bruit, "Arrêtez les mots des mots inutiles [https://qiita.com/Hironsan/items/2466fe0f344115aff177#%E3%82%B9%E3%83%88%E3%83%83%E3" Enregistrez-vous avec% 83% 97% E3% 83% AF% E3% 83% BC% E3% 83% 89% E3% 81% AE% E9% 99% A4% E5% 8E% BB) → Génération de nuage de mots », Répétez jusqu'à ce que vous obteniez des résultats que vous pouvez analyser.
Et l'image suivante a été obtenue. Il a été généré par le bouche à oreille d'une certaine société informatique.
Même si vous regardez cette image, il est difficile de comprendre la tendance de l'entreprise, je vais donc me concentrer sur le mot caractéristique «motivation» et l'analyser davantage. Est-ce vraiment motivé? Est-ce bas?
Tout d'abord, extrayez les avis qui incluent la chaîne " motivation
".
$ grep "motivation" scraping.csv > scraping_motivation.csv
J'ai trop réduit mon temps de sommeil, alors je vais utiliser un service externe à partir d'ici. → Exploration de texte AI par Userlocal
À la suite de l'analyse de dépendance sur la «« motivation »», les mots positifs tels que «« élevé »» et «« augmenter »» sont classés en haut de la fréquence d'apparition, donc «** Les employés de cette entreprise semblent être très motivés. ** "a été trouvé.
Bien que j'étais presque un amateur, j'ai essayé d'analyser les données en imitant l'apparence. En conséquence, je n'ai pas pu accéder aux informations que je souhaitais, mais j'ai pu constater que la visualisation des données pouvait conduire à de nouvelles découvertes. Peut-être devons-nous concevoir totalement les données et les méthodes d'analyse à collecter pour atteindre l'objectif. (Cela semble difficile ...)
"Comment aimer travailler?" → "Très motivé" → Pourquoi?
Cependant, il semble difficile de dériver toutes les réponses en se basant uniquement sur les données, donc tout en utilisant les données comme outil de support, N'est-ce pas le meilleur raccourci pour répéter les tests d'hypothèse avec l'utilisateur? Oui, comme le design thinking.
Recommended Posts