PythonでNLTKを使ってストップワードを削除する

データをコンピュータが理解できるものに変換するプロセスは、前処理と呼ばれます。前処理の主な形式の1つは、無駄なデータを除外することです。自然言語処理では、無駄な単語(データ)はストップワードと呼ばれます。 ストップワードとは何ですか? ストップワード:ストップワードは、検索のためにエントリにインデックスを付けるときと検索するときの両方で、検索エンジンが無視するようにプログラムされている、一般的に使用される単語(theaaninなど)です。検索クエリの結果として。 これらの単語がデータベース内のスペースを占有したり、貴重な処理時間を費やしたりすることは望ましくありません。このため、あなたがストップワードと見なしている単語のListを保存することで、それらを簡単に削除できます。 pythonのNLTK(Natural Language Toolkit)には、16の異なる言語で保存されているストップワードのListがあります。これらはnltk_dataディレクトリにあります。 home / pratima / nltk_data / corpora / stopwordsはディレクトリアドレスです(自分のホームディレクトリ名を忘れずに変更してください)。 ストップワードのListを確認するには、Pythonシェルで次のコマンドを入力します。 {私たち彼女自分しかしそこ1回うち非常に'、' with '、' they '、' an '、' be '、' some '、' for '、' do '、' its '、' yours '、' such '、' into ' 、 'of'、 'most'、 'self'、 'other'、 'off'、 'is'、 's'、 'am'、 'または'、 'who'、 'as'、 'from'、 'それぞれthe自分まであり私たちこれらあなたなしノルあった彼女もっと自分これすべき私たち彼らしながら上記、 'both'、 'up'、 'to'、 'our'、 'had'、 'she'、 'all'、 'no'、 'when'、 'at'、 'any'、 'before' 、それら同じ持っているinwillondoes、あなた自身、それからそれ理由何をなぜできるできるできたないあなた自分持っているただどこのみ自分これそれら'、'少数 '、'誰 '、' t '、'存在 '、' if '、'彼ら '、'に対して '、'に対して '、' a '、' by '、' done '、' it ' 、どのようにさらにあったここより`} 注:英語の.txtに選択した単語を追加してListを変更することもできます。ストップワードディレクトリ内のファイル。 NLTKでストップワードを削除する 次のプログラムは、テキストからストップワードを削除します。

🐶Pythonコードの例を示すで

from nltk.corpus import stopwords
from nltk.tokenize import word_tokenize

example_sent = "This is a sample sentence, showing off the stop words filtration."

stop_words = set(stopwords.words('english'))

word_tokens = word_tokenize(example_sent)

filtered_sentence = [w for w in word_tokens if not w in stop_words]

filtered_sentence = []

for w in word_tokens:
    if w not in stop_words:
        filtered_sentence.append(w)

print(word_tokens)
print(filtered_sentence)

ファイル内でストップワード操作を実行する 以下のコードで、text.txtはストップワードが削除される元の入力ファイルです。 filteredtext.txtは出力ファイルです。次のコードを使用してそれをすることができます:

🐶Pythonコードの例を示すで

import io
from nltk.corpus import stopwords
from nltk.tokenize import word_tokenize
#word_tokenize accepts a string as an input, not a file.
stop_words = set(stopwords.words('english'))
file1 = open("text.txt")
line = file1.read()# Use this to read file content as a stream:
words = line.split()
for r in words:
    if not r in stop_words:
        appendFile = open('filteredtext.txt','a')
        appendFile.write(" "+r)
        appendFile.close()

これは、将来の運用に貢献しない単語を削除することによって、処理済みコンテンツをより効率的にする方法です。

🐶 🐍

Last Updated: 5/19/2019, 1:46:25 AM