質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

Mecab

Mecabは、オープンソースの形態素解析エンジンです。 言語、辞書、コーパスに依存しない汎用的な設計を基本方針としています。 Mecabの由来は、開発者の好物である和布蕪(めかぶ)から名づけられました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

自然言語処理

自然言語処理は、日常的に使用される自然言語をコンピューターに処理させる技術やソフトウェアの総称です。

Q&A

解決済

1回答

459閲覧

MeCabで分かち書きした語句と元々ある語彙表を比較して,語彙表にない語句を検出したい

退会済みユーザー

退会済みユーザー

総合スコア0

CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

Mecab

Mecabは、オープンソースの形態素解析エンジンです。 言語、辞書、コーパスに依存しない汎用的な設計を基本方針としています。 Mecabの由来は、開発者の好物である和布蕪(めかぶ)から名づけられました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

自然言語処理

自然言語処理は、日常的に使用される自然言語をコンピューターに処理させる技術やソフトウェアの総称です。

0グッド

0クリップ

投稿2018/11/08 05:16

編集2018/11/08 06:31

前提・実現したいこと

Pythonで入力文章をある語彙表の語句だけで言い換える(平易化する)システムを作っています。
入力文章をMeCabで分かち書きしてその語句をcsvファイルで保存し,csvファイルの語彙表と比較して,言い換える必要のある語句(語彙表に登録されていない語句)を検出する機能を実装中に以下の問題が発生しました。
私が行き詰っている方法でなくとも,分かち書きした語句と元々ある語彙表を比較して,語彙表にない語句を検出できる方法があれば教えていただきたいです.よろしくお願いいたします.

発生している問題・エラーメッセージ

分かち書きした語句をcsvファイルに保存すると1つのセルの中に入力されてしまう

該当のソースコード

Python
ソースコード
import sys
import MeCab
import csv

path_w = '---.csv'
data = []

#######形態素解析##########

m = MeCab.Tagger ("-Owakati")
print("形態素解析したい文章を入力してください")
x = input()

#######ファイル書き込み#######

with open(path_w, mode = 'w') as f:
f.write(str(m.parse(x)))

with open(path_w) as f:
print(f.read())

###########################

for row2 in csv.reader(open('---2.csv','r'),delimiter = '\t'):
for row1 in csv.reader(open('---.csv','r'),delimiter = '\t'):
if( row2 != row1):
print(row1)

試したこと

リストに入れて出力したら,セル別で保存されたが,クオーテーションが付くため表の前処理が必要となり断念した.

補足情報(FW/ツールのバージョンなど)

Windows7
Python 3.7.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

素直にsplitしてcsvモジュールで行を書いては駄目なのですか?

python

1import csv 2import MeCab 3 4tagger = MeCab.Tagger("-Owakati") 5x = "形態素解析したい文章" 6result = tagger.parse(x).split() 7 8with open("result.txt", mode="w") as f: 9 writer = csv.writer(f) 10 writer.writerow(result) 11 12""" => 13$ cat result.txt 14形態素,解析,し,たい,文章 15"""

投稿2018/11/08 08:25

hayataka2049

総合スコア30933

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/11/08 08:57

Python初心者のため,無知でした. 助かりました.ありがとうございます.
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問