icon
icon

PythonのMeCabで分かち書きする方法を現役エンジニアが解説【初心者向け】

初心者向けにPythonのMeCabで分かち書きする方法について現役エンジニアが解説しています。MeCabはオープンソースの形態素解析エンジンの一つです。分かち書きとはある単位ごとに区切って、その間に空白を置くことです。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

PythonのMeCabで分かち書きする方法について解説します。

そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

PythonのMeCabで分かち書きする方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

形態素解析エンジンMeCabとは

形態素解析とは、人間が日常生活の中で一般的に使っている言葉(自然言語)を形態素に分割することです。
形態素とは、言葉が意味を持つまとまりの単語の最小単位のことです。

形態素解析を行うソフトウェアを「形態素解析エンジン」と呼びます。一般には形態素解析エンジンを単体で使うことはまれで、何らかテキスト処理の前処理に多用します。

MeCabはオープンソースの形態素解析エンジンの一つです。
MeCabは日本語文章の解析に広く利用されています。
 

分かち書きとは

分かち書きとは、文章を書く時、ある単位ごとに区切って、その間に空白を置くことです。
言語により、単語ごとに分ける、文節ごとに分ける、といったスタイルがあります。

例えば英語では “I have a pen.” のように、単語と単語の間に空白があります。
一方、日本語では 「富士山に登る」 のように、空白がなく、そのままコンピュータで解析するには不向きです。

そのため、形態素解析エンジンにより「富士山/に/登る」のように、分かち書きをして、機械処理を容易にします。
 

[PR] 未経験からWebエンジニアを目指す方法とは

MeCabとPythonで分かち書きする方法

インストール

mecab-python3モジュールをインストールします。
 

pip install mecab-python3

 

動作確認

Pythonインタプリタで以下の通り入力します。
特にエラーが発生しなければ、インストールは成功しています。
 

import MeCab

 

実際に書いてみよう

ソースコード>

import MeCab
wakati = MeCab.Tagger("-Owakati")
words = wakati.parse("ここではきものを脱いでください").split()
print(words)

 

実行結果

[‘ここ’, ‘で’, ‘は’, ‘きもの’, ‘を’, ‘脱い’, ‘で’, ‘ください’]
 

解説

1行目でMeCabモジュールをインポートしました。
2行目で分かち書きのためのインスタンスを作成しました。
3行目で文章の形態素解析を行い、結果をwords変数に代入しました。
4行目でwords変数を出力しました。
 

監修してくれたメンター

橋本紘希

システムインテグレータ企業勤務のシステムエンジニア。

開発実績: Javaプログラムを用いた業務用Webアプリケーションや、基幹システム用バッチアプリケーションなどの設計構築試験。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でもPythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプPython講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。