Hinweise zur Verwendung von MeCab aus Python

Ein persönlicher Hinweis bei Verwendung von MeCab aus Python.

mecab.py


#!/usr/bin/env python
# -*- coding:utf-8 -*-

import MeCab
m = MeCab.Tagger()

print m.parse("Wenn ein Hund geht, trifft er einen Stock.")
$ ./mecab.py
Hund Nomen,Allgemeines,*,*,*,*,Hund,Hund,Hund
Auch Assistent,Hilfe,*,*,*,*,Ebenfalls,Mo.,Mo.
Verb gehen,Unabhängigkeit,*,*,Fünf-Dan / Ka-Linie,Angenommene Form,gehen,Arche,Arche
Ba Assistent,Verbindungsassistent,*,*,*,*,Wenn,Ba,Ba
Stick Nomen,Allgemeines,*,*,*,*,Stange,Bogen,Baud
Hilfs,Fallassistent,Allgemeines,*,*,*,Zu,D.,D.
Hit Verb,Unabhängigkeit,*,*,Fünf Schritte, La Linie,Grundform,Schlagen,Atal,Atal
.. Symbol,Phrase,*,*,*,*,。,。,。
EOS

Aus Datei lesen

mecab_from_file.py


#!/usr/bin/env python
# -*- coding:utf-8 -*-

import sys
param = sys.argv
infile = param[1]

f = open(infile)
line = f.readline() 

import MeCab
m = MeCab.Tagger()

while line:
	res = m.parseToNode(line)

	while res:
		print res.feature
		#Substantiv,Allgemeines,*,*,*,*,Hund,Hund,Hund

		res = res.next

	line = f.readline()

Zählen Sie die Häufigkeit der gelesenen Teile aus der Datei

Es ist einfacher, collection.defaultdict beim Zählen von Elementen zu verwenden.

mecab_class_count.py


#!/usr/bin/env python
# -*- coding:utf-8 -*-

import sys
param = sys.argv
infile = param[1]

f = open(infile)
line = f.readline() 

import MeCab
m = MeCab.Tagger()

from collections import defaultdict
frequency = defaultdict(int)

while line:
	res = m.parseToNode(line)

	while res:
		# print res.feature
		#Substantiv,Allgemeines,*,*,*,*,Hund,Hund,Hund
		
		arr = res.feature.split(",")
		class_1 = arr[0]
		frequency[class_1] += 1
		
		res = res.next

	line = f.readline()

# print frequency
# defaultdict(<type 'int'>, {'...

for k, v in frequency.iteritems():
    print k, v
$ ./mecab_morph_count.py input.txt
Verb 4
BOS/EOS 8
Nomen 9
Hilfs 7
Hilfsverb 1

Möglichkeit

Geben Sie ein Wörterbuch an

#MeCab-Instanz
m = MeCab.Tagger(' -d /usr/local/Cellar/mecab/0.996/lib/mecab/dic/mecab-ipadic-neologd')

Geben Sie mecabrc an

m = MeCab.Tagger('-r my_mecabrc')

Recommended Posts

Hinweise zur Verwendung von MeCab aus Python
Hinweise zur Installation von Python mit PyEnv
MeCab von Python
Hinweise zur Verwendung von rstrip mit Python.
Hinweise zum Zugriff auf dashDB über Python
Hinweise zur Verwendung von OpenCV mit Windows 10 Python 3.8.3.
Von Python bis zur Verwendung von MeCab (und CaboCha)
Hinweise zur Verwendung von Python-Unterprozessen
Hinweise zur Verwendung von Alembic
Hinweise zur Installation von Python3 und zur Verwendung von pip unter Windows7
Hinweise zur Verwendung von dict mit Python [Competition Pro]
[Python] Hinweise zur Beschleunigung genetischer Algorithmen mithilfe von Multiprocessing
Hinweis für oct2py beim Aufrufen des Octave-Skripts aus Python
Python-Memo mit perl-ternärem Operator
Python-Notizen zur Verwendung von Perl-Spezialvariablen
[Django] Hinweise zur Verwendung der Django-Debug-Symbolleiste
[Python] Hinweise zur Datenanalyse
Hinweise zur Optimierung mit Pytorch
Hinweise zur Installation von Python auf Ihrem Mac
Online-Übertragung mit Python
Hinweise zur Installation von Python unter CentOS
Mindestnotizen bei Verwendung von Python auf Mac (Homebrew Edition)
Hinweise zu Python- und Wörterbuchtypen
Verwenden von Rstan aus Python mit PypeR
Hinweise zum Importieren von Daten aus MySQL oder CSV mit Python
Hinweise zur Verwendung von Post-Receive und Post-Merge
Python + Django + Scikit-Learn + Mecab (1) mit Heroku
Python + Django + Scikit-Learn + Mecab (2) mit Heroku
Studie über die Miete in Tokio mit Python (3-2)
Verwenden von Cloud-Speicher aus Python3 (Einführung)
Mecab / Cabocha / KNP unter Python + Windows
Installieren Sie Python unter CentOS mit Pyenv
Studie über die Miete in Tokio mit Python (3-3)
Führen Sie Ansible über Python mithilfe der API aus
Vorsichtsmaßnahmen bei der Verwendung von Phantomjs aus Python
Greifen Sie mit OAuth 2.0 von Python aus auf Tabellenkalkulationen zu
Hinweise zur Verwendung von matplotlib auf dem Server
Bei Verwendung von MeCab mit virtualenv python
Installieren Sie Python unter CentOS mit pyenv
(Anfänger) Hinweise zur Verwendung von pyenv auf dem Mac
Rufen Sie C / C ++ von Python auf dem Mac auf
Versuchen Sie es mit Amazon DynamoDB von Python
Aktualisieren Sie Mac Python von 2 auf 3
Wie man die Anzahl der GPUs aus Python kennt ~ Hinweise zur Verwendung von Multiprocessing mit pytorch ~
Installieren Sie mecab auf dem gemeinsam genutzten Sakura-Server und rufen Sie es von Python aus auf
Hinweise zur Verwendung von cChardet und python3-chardet in Python 3.3.1.
Führen Sie Python-Code unter C ++ aus (mit Boost.Python).
Anmerkung von nfc.ContactlessFrontend () von nfcpy von Python
Verwenden von Python und MeCab mit Azure Databricks
Notizen vom Anfang von Python 1 lernen
Installieren Sie die Python-Bibliothek auf Lambda mit [/ tmp]
Hinweise zur japanischen OCR mit Python
Herstellen einer Verbindung von Python zu MySQL unter CentOS 6.4
Ich habe versucht, die UnityCloudBuild-API von Python zu verwenden
Hinweise zum Erstellen von Python und Pyenv auf dem Mac
Hinweise zur Implementierung von APNs-Tests mit Pytest
Lassen Sie einen Servomotor mit Python auf Raspberry Pi 3 laufen