品詞分解して文章を分析したい。Mecabを使えばこんなことができるようになります。Mecabとは、日本語の文章を形態素解析を用いて分割し、各要素の読み方から活用形までを自動で解析してくれるパッケージです。今回はMecabを使って、文章を形態素解析し、品詞分解する方法をまとめていきます。具体的には、Mecabを使って形態素解析し、それぞれの品詞がどれくらい使われているかをカウントする機能を実装していきます。■まとめ■Mecabで形態素解析:品詞分解MeCabで形態素解析する方法を解説します。最後まで読めば形態素の処理もできるようになるので、ぜひ覚えていってくださいね。以下MeCabをインストールしている前提で進めていきます。MeCabをインストールしてないよって方には私も記事でMeCabインストールの手順を書いておりますので、参考までに。初めに簡単な形態素解析を行う方法です。以下のコードで、テキスト文を形態素解析し、結果をstr型で返してくれます。mecab.parse(text)print(result)mecab.parse(text)でparseメソッドを使っています。parseメソッドを使うと、形態素解析した結果をstr型で返してくれます。textの部分に、自分の解析したい文字列を与えれば、形態素解析して文字列として結果を出力します。以上のコードを実行した結果がこちら。形態素解析できていることが確認できるかと思います。次に分かち書きを行う方法についてです。分かち書きの説明をWikipediaより引用です。わかち書き(わかちがき)とは、文章において語の区切りに空白を挟んで記述することである。分かち書き・別ち書きとも表記する。Wikipedia英文を想像しただければわかると思います。単語の間に半角スペースが入ってますよね。あれを自動でやってくれます。先ほど紹介したコードのTagger(“”)の部分を、Tagger(“-Owakati”)をすることで、分かち書きができるようになります。実行結果は以下のようになります。形態素解析した結果でデータ処理を行いたい場合には、parseToNodeメソッドを使います。parseメソッドを使うことでもできるみたいですが、わかりやすいので、parseToNodeメソッドを紹介します。parseToNodeメソッドは、例えば名詞だけを抽出したり、品詞ごとに出現数をカウントしたりする場合に便利です。parseToNodeメソッドは、Mecab内で生成される文頭の形態素のインスタンスを返します。名詞,副詞可能,*,*,*,*,明日,アシタ,アシタ)が返り値になります。nextメソッドにより次の形態素のインスタンスにアクセスできるので、parseToNodeメソッド、nextメソッドを使い合わせることで、形態素1つ1つに対して処理が行えます。以下のコードは各形態素の出現数をカウント、解析された単語を分析するコードです。text="夢ならばどれほど良かったでしょう。今だにあなたのことを夢に見る。"忘れたものを取りに帰るように、古びたアルバムの埃を払う。MeCab.Tagger("-Ochasen")text="夢ならばどれほど良かったでしょう。今だにあなたのことを夢に見る。\"忘れたものを取りに帰るように、古びたアルバムの埃を払う。)node.feature.split(‘,’)[0]についてfeatureは形態素の解析結果のパラメータです。名詞,副詞可能,*,*,*,*,明日,アシタ,アシタでは、名詞以降がfeatureに含まれます。,(カンマ)で分割されているfeatureの[0]番目を指定します。「明日」の形態素解析を行った場合は、featureの0番目の要素[名詞]が指定される。品詞は全部で9種類あるので、それぞれに別のコードを記述することで、品詞別に処理することができます。node.surfaceで、surfaceは形態素解析された単語を指します。上記の分の場合は、surface=[明日]となります。node.nextで次の形態素に移ります。結果は、以下のようになりました。'払う']■まとめMeCabの形態素解析のためのメソッドは、以下2つ。名詞,副詞可能,*,*,*,*,明日,アシタ,アシタ(feature.split(“,”)[])parseToNodeメソッドの返り値は以下のようになります。名詞,副詞可能,*,*,*,*,明日,アシタ,アシタ参考にしたwebページ:http://taku910.github.io/mecab/bindings.html最後まで読んでいただきありがとうございました。API申請の英字300字をクリアしよう!【例文も紹介】Pythonで何ができるかを調べてわかったことの備忘録プロゲートで初心者がPythonを学んでみた感想Twitter分析!プログラミングに関するツイートを分析してみた【PHP】XAMPPのApacheとEclipseのワークスペースの設定PREVツイート分析で使える高度な検索オプション一覧NEXTZBrushCoreで髪の毛モデリング練習4:初音ミク管理人プロフィール当サイト(your-3d.com)の管理人のゆあーさんと申します。このサイトでは、私がZBrushやunityなどで調べたことを共有出来たらいいなと思い開設しました。読んでくださった皆様のお役に立てたら幸いです。https://your-3d.booth.pm/プロフィールページ作りました。【Python】CSV形式でデータを扱う方法Tensorflow-gpuインストール時の注意点:Win初心者がPythonで顔認識してみた【カスケードファイル】Atomのインストール&日本語化の手順を詳しく解説【Windows】Pythonで画像をスクレイピングしてみた。3d管理人のゆあーさんです。生まれは北国、現在は東京に住んでます。趣味はプログラミング、モデリング、あとブログです。このブログに書いている内容ですね。ゲームもたまにしてます。