NLP 用 Python を使用して複数の PDF ファイルからテキストを抽出して分析するにはどうすればよいですか?
要約:
ビッグデータ時代の到来により、自然言語処理 (NLP) は大量のテキスト データを解決する重要な手段の 1 つになりました。一般的な文書形式として PDF にはリッチ テキスト情報が含まれているため、PDF ファイル内のテキストをどのように抽出して分析するかが NLP の分野で重要なタスクとなっています。この記事では、Python プログラミング言語と関連する NLP ライブラリを使用して複数の PDF ファイル内のテキストを抽出および分析する方法を、具体的なコード例を示しながら紹介します。
pip install PyPDF2 pip install nltk pip install pandas
import PyPDF2 def extract_text_from_pdf(file_path): with open(file_path, 'rb') as file: pdf_reader = PyPDF2.PdfFileReader(file) text = "" for page_num in range(pdf_reader.numPages): page = pdf_reader.getPage(page_num) text += page.extractText() return text pdf_file_path = "example.pdf" text = extract_text_from_pdf(pdf_file_path) print(text)
import os def extract_text_from_folder(folder_path): text_dict = {} for file_name in os.listdir(folder_path): if file_name.endswith(".pdf"): file_path = os.path.join(folder_path, file_name) text = extract_text_from_pdf(file_path) text_dict[file_name] = text return text_dict pdf_folder_path = "pdf_folder" text_dict = extract_text_from_folder(pdf_folder_path) output_file_path = "output.txt" with open(output_file_path, 'w', encoding='utf-8') as file: for file_name, text in text_dict.items(): file.write(file_name + " ") file.write(text + " ")
import nltk import pandas as pd from nltk.tokenize import word_tokenize nltk.download('punkt') def preprocess_text(text): tokens = word_tokenize(text) # 分词 tokens = [token.lower() for token in tokens if token.isalpha()] # 去除标点符号和数字,转换为小写 return tokens # 对提取的文本进行预处理和分析 all_tokens = [] for text in text_dict.values(): tokens = preprocess_text(text) all_tokens.extend(tokens) # 计算词频 word_freq = nltk.FreqDist(all_tokens) df = pd.DataFrame.from_dict(word_freq, orient='index', columns=['Frequency']) df.sort_values(by='Frequency', ascending=False, inplace=True) print(df.head(10))
概要:
Python プログラミング言語と関連する NLP ライブラリを使用することで、簡単に抽出して分析できます。複数の PDF ファイルからのテキスト。上記では具体的なコード例を示しています。読者の役に立つことを願っています。読者は、品詞のタグ付けやセンチメント分析など、実際のニーズに基づいてさらなるテキスト処理と分析を実行できます。
以上がNLP 用の Python を使用して複数の PDF ファイルからテキストを抽出して分析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。