Python pour le NLP : Comment traiter un texte PDF contenant plusieurs colonnes de données ?
Aperçu :
Avec le développement du traitement du langage naturel (NLP), le traitement du texte PDF est devenu une tâche très importante. Cependant, lorsque les textes PDF contiennent plusieurs colonnes de données, leur traitement devient plus complexe. Dans cet article, nous présenterons comment utiliser Python pour traiter du texte PDF contenant plusieurs colonnes de données, extraire des informations utiles et effectuer le traitement des données approprié.
Étape 1 : Installer les bibliothèques nécessaires
Tout d'abord, nous devons installer certaines bibliothèques Python nécessaires pour faciliter le traitement du texte PDF. Ces bibliothèques incluent pdfplomber et pandas. Ils peuvent être installés à l'aide de la commande suivante :
pip install pdfplumber pandas
Deuxième étape : importer les bibliothèques requises
Avant de commencer le codage proprement dit, nous devons importer les bibliothèques requises. Nous pouvons importer les bibliothèques pdfplumber et pandas en exécutant la commande suivante :
import pdfplumber import pandas as pd
Troisième étape : lire le fichier PDF et extraire le texte
Ensuite, nous devons lire le fichier PDF et extraire le texte. Les fichiers PDF peuvent être ouverts à l'aide de la fonction pdfplumber.open() dans la bibliothèque pdfplumber et tout le texte extrait à l'aide de la méthode extract_text(). Voici un exemple simple :
with pdfplumber.open('multi_column_data.pdf') as pdf: text = "" for page in pdf.pages: text += page.extract_text()
Étape 4 : Convertir le texte en DataFrame
Après avoir extrait le texte, nous devons le convertir en une structure de données adaptée au traitement. Puisque notre texte PDF contient plusieurs colonnes de données, nous pouvons utiliser le DataFrame de la bibliothèque pandas pour traiter ces données. Voici un exemple de conversion de texte en DataFrame :
data = pd.DataFrame([row.split(' ') for row in text.split(' ') if row.strip() != ''])
Dans le code ci-dessus, nous divisons le texte par ligne à l'aide de la méthode split() et divisons ensuite chaque ligne en colonnes à l'aide de split('
'). Nous utilisons également split('
') pour diviser les données entre différentes lignes et utilisons des conditions de jugement pour supprimer les lignes vides.
Étape 5 : Traiter et nettoyer les données
Maintenant que nous avons converti le texte en DataFrame, nous pouvons commencer à traiter et nettoyer les données. Lors du traitement de données multicolonnes, vous pouvez utiliser diverses méthodes et fonctions fournies par pandas pour le traitement. Voici des exemples d'opérations de traitement de données courantes :
Sélectionner des colonnes spécifiques :
selected_data = data[[0, 1]]
Renommer les colonnes :
data.columns = ['Column1', 'Column2']
Supprimer les lignes avec des valeurs manquantes :
data.dropna(inplace=True)
Convertir les types de données :
data['Column1'] = data['Column1'].astype(int)
Étape 6 : Enregistrez les données
La dernière étape consiste à enregistrer les données traitées. Vous pouvez utiliser la méthode to_csv() fournie par la bibliothèque pandas pour enregistrer les données sous forme de fichier CSV, ou vous pouvez utiliser la méthode to_excel() pour enregistrer les données sous forme de fichier Excel. Voici un exemple d'enregistrement de données sous forme de fichier CSV :
data.to_csv('processed_data.csv', index=False)
Résumé :
En utilisant les bibliothèques pdfplumber et pandas en Python, nous pouvons facilement traiter du texte PDF contenant plusieurs colonnes de données. Tout d’abord, nous utilisons la bibliothèque pdfplumber pour extraire le texte et le convertir en une structure de données adaptée au traitement. Ensuite, utilisez la bibliothèque pandas pour le traitement et le nettoyage des données. Enfin, nous pouvons sauvegarder les données traitées sous forme de fichier CSV ou Excel. Espérons que cet article fournisse un moyen simple mais efficace de traiter du texte PDF contenant plusieurs colonnes de données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!