NLTKによるストップワード除去
2023-10-05 02:27:24
質問
nltk toolkitを使って、ユーザーが入力したテキストをストップワード除去して処理しようとしていますが、ストップワード除去によって、「and」、「or」、「not」などの単語が除去されてしまいます。これらの単語は、後にテキストをクエリとして処理する際に必要となる演算子なので、ストップワード除去処理後も残しておきたいのです。テキストクエリで演算子になる単語がどれなのか分からないし、不要な単語も削除したい。
どのように解決するのですか?
ストップワード・リストから取り出すオペレータ・ワードのリストを自分で作ることをお勧めします。セットは便利に引き算することができますので。
operators = set(('and', 'or', 'not'))
stop = set(stopwords...) - operators
そうすると、単純にある単語が
in
または
not in
を使えば、オペレータがストップワードリストの一部であるかどうかに依存することなく、セットを作成することができます。その後、後で別のストップワードリストに切り替えたり、演算子を追加したりすることができます。
if word.lower() not in stop:
# use word
関連
-
[解決済み] pipでPythonの全パッケージをアップグレードする方法
-
[解決済み] Pythonの構文に新しいステートメントを追加することはできますか?
-
[解決済み] Django のテストデータベースをメモリ上だけで動作させるには?
-
[解決済み] django.db.migrations.exceptions.InconsistentMigrationHistory
-
[解決済み] スペースがないテキストを単語のリストに分割する方法
-
[解決済み] pandasのタイムゾーンに対応したDateTimeIndexを、特定のタイムゾーンに対応したナイーブなタイムスタンプに変換する。
-
[解決済み] あるオブジェクトが数であるかどうかを確認する、最もパイソン的な方法は何でしょうか?
-
[解決済み] Python Logging でログメッセージが2回表示される件
-
[解決済み] matplotlib でプロットの軸、目盛、ラベルの色を変更する方法
-
[解決済み] Pandasを使って、既存のExcelファイルに新しいシートを保存する方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] PythonでのAWS Lambdaのインポートモジュールエラー
-
[解決済み] Django のテストデータベースをメモリ上だけで動作させるには?
-
[解決済み] DataFrameに日付間の日数カラムを追加する pandas
-
[解決済み] Django Rest Framework ファイルアップロード
-
[解決済み] Ctrl-CでPythonスクリプトを終了できない
-
[解決済み] Django で全てのリクエストヘッダを取得するにはどうすれば良いですか?
-
[解決済み] matplotlib でプロットの軸、目盛、ラベルの色を変更する方法
-
[解決済み] Python 言語を決定するには?
-
[解決済み] Pythonの文字列の前にあるbという接頭辞は何を意味するのですか?
-
[解決済み] 新しいpip backtrackingの実行時問題の解決