前提・実現したいこと
Mecabのサンプルを動かしている際にnode.surface
の結果が想定と異なります。
MeCabを使い parseToNodeでnodeに分割した場合に node.surface で表層ではなく
後半部分が取得されてしまいます。
バージョン
python: 3.7.1
mecab: 0.996
発生している問題・エラーメッセージ
実際に実行した結果と想定している結果を記載致します。
実行結果
庭には二羽鶏がいる。 BOS/EOS,*,*,*,*,*,*,*,* 庭には二羽鶏がいる。 名詞,一般,*,*,*,*,庭,ニワ,ニワ には二羽鶏がいる。 助詞,格助詞,一般,*,*,*,に,ニ,ニ は二羽鶏がいる。 助詞,係助詞,*,*,*,*,は,ハ,ワ 二羽鶏がいる。 名詞,数,*,*,*,*,二,ニ,ニ 羽鶏がいる。 名詞,接尾,助数詞,*,*,*,羽,ワ,ワ 鶏がいる。 名詞,一般,*,*,*,*,鶏,ニワトリ,ニワトリ がいる。 助詞,格助詞,一般,*,*,*,が,ガ,ガ いる。 動詞,自立,*,*,一段,基本形,いる,イル,イル 。 記号,句点,*,*,*,*,。,。,。 BOS/EOS,*,*,*,*,*,*,*,*
想定結果
BOS/EOS,*,*,*,*,*,*,*,* 庭 名詞,一般,*,*,*,*,庭,ニワ,ニワ に 助詞,格助詞,一般,*,*,*,に,ニ,ニ は 助詞,係助詞,*,*,*,*,は,ハ,ワ 二 名詞,数,*,*,*,*,二,ニ,ニ 羽 名詞,接尾,助数詞,*,*,*,羽,ワ,ワ 鶏 名詞,一般,*,*,*,*,鶏,ニワトリ,ニワトリ が 助詞,格助詞,一般,*,*,*,が,ガ,ガ いる 動詞,自立,*,*,一段,基本形,いる,イル,イル 。 記号,句点,*,*,*,*,。,。,。 BOS/EOS,*,*,*,*,*,*,*,*
このように後半部分のみ取得されているように見えます
該当のソースコード
# coding: utf-8 import MeCab text = '庭には二羽鶏がいる。' mecab = MeCab.Tagger('mecabrc') mecab.parse('') node = mecab.parseToNode(text) while node: print(node.surface, node.feature) node = node.next
試したこと
http://thr3a.hatenablog.com/entry/20170806/1502002257
こちらを参考にさせていただいてそのままのソースコードですが結果が異なります。
nodeで分割した際に単語を取得したいのですが 単語を除いた後半部分が表示されてしまいます。
特殊なことはしていないつもりなので仕様が変わったのかと思いましたがそのような情報が見つからず困っています
どなたかお力添えいただけないでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/07 06:27