Pythonでのテキスト処理の基礎


  1. テキストの読み込み: テキストデータを読み込むために、Pythonのファイル操作機能を使用します。例えば、以下のようにファイルを開いてテキストを読み込むことができます。
with open('テキストファイル.txt', 'r', encoding='utf-8') as file:
    text = file.read()
  1. テキストの分割: テキストを単語や文に分割することは、テキスト処理の重要なステップです。Pythonでは、split()関数や正規表現を使用してテキストを分割することができます。
words = text.split()  # スペースで分割
sentences = re.split(r'(?<=[。.!?])', text)  # 句読点で分割
  1. テキストのクリーニング: テキスト内の不要な文字や記号を削除することは、テキスト処理の重要な部分です。Pythonの文字列操作や正規表現を使用して、テキストをクリーニングすることができます。
clean_text = re.sub(r'[^\w\s]', '', text)  # 記号を削除
  1. テキストの正規化: テキストの正規化は、大文字と小文字の統一、ステミング(単語の基本形への変換)、およびストップワードの除去などを含みます。Pythonでは、NLTK(Natural Language Toolkit)ライブラリを使用してこれらのタスクを実行することができます。
import nltk
from nltk.corpus import stopwords
from nltk.stem import PorterStemmer
nltk.download('stopwords')
# 大文字と小文字の統一
lower_text = text.lower()
# ステミング
stemmer = PorterStemmer()
stemmed_words = [stemmer.stem(word) for word in words]
# ストップワードの除去
stop_words = set(stopwords.words('english'))
filtered_words = [word for word in words if word not in stop_words]

これらは、テキスト処理の基礎的な手法の一部です。他にも、品詞タグ付け、固有名詞抽出、単語の埋め込み表現の生成など、さまざまなテキスト処理のタスクがあります。詳細な実装や応用の例については、Pythonの自然言語処理ライブラリであるspaCyやNLTKのドキュメントを参照してください。