Maison >développement back-end >Tutoriel Python >Utilisez pandas pour traiter facilement les données des fichiers txt

Utilisez pandas pour traiter facilement les données des fichiers txt

WBOY
WBOYoriginal
2024-01-19 08:50:151295parcourir

Utilisez pandas pour traiter facilement les données des fichiers txt

Utilisez des pandas pour traiter facilement les données des fichiers txt

Dans l'analyse et le traitement des données, nous rencontrons souvent des situations où les données lues à partir des fichiers txt doivent être traitées. Par exemple, le format des données prête à confusion et doit être nettoyé ; certaines colonnes ne sont pas valides et doivent être supprimées ; certaines colonnes doivent être converties en type, etc. Ces tâches peuvent demander beaucoup de travail et de temps, mais nous pouvons facilement réaliser ces opérations grâce à la bibliothèque Python pandas.

Cet article combinera des exemples de code pour vous apprendre à utiliser les pandas pour traiter les données des fichiers txt.

  1. Présentez la bibliothèque pandas

Avant d'utiliser la bibliothèque pandas, nous devons d'abord la présenter. Dans les scripts Python, il est généralement convenu de renommer la bibliothèque pandas en pd pour faciliter les appels ultérieurs.

import pandas as pd
  1. Lire le fichier txt

Tout d'abord, nous devons lire les données dans le fichier txt. Chez les pandas, nous utilisons la fonction pd.read_csv() pour lire les données. Bien que le nom de la fonction contienne csv, cette fonction convient également à la lecture de fichiers txt.

data = pd.read_csv('data.txt', sep='    ', header=None)

Les paramètres de la fonction sont expliqués comme suit :

  • 'data.txt' : indique le chemin et le nom du fichier txt que nous devons lire.
  • sep : Indique le séparateur de données. ' ' est utilisé ici pour indiquer que les données sont séparées par des tabulations, et il peut également être remplacé par d'autres symboles.
  • header : indique si le fichier contient des noms de colonnes, sinon, il est défini sur Aucun.

Après avoir lu les données, nous pouvons visualiser le contenu et la forme des données en imprimant les données.

print(data)

Résultat de sortie :

   0    1    2
0  A  123  1.0
1  B  321  2.0
2  C  231  NaN
3  D  213  4.0
4  E  132  3.0

On peut voir que les données lues ont été stockées dans des données sous forme de DataFrame.

  1. Nettoyage des données

Les données lues peuvent présenter de nombreuses irrégularités ou erreurs de format, ce qui nous oblige à nettoyer les données. Par exemple, il peut y avoir des valeurs manquantes dans certaines lignes ou colonnes, et nous devons les remplir ou les supprimer ; le type de données de certaines colonnes peut ne pas répondre à nos besoins, et nous devons les convertir en types numériques ou chaînes, etc. .

a. Supprimer les lignes avec des valeurs manquantes

Nous pouvons utiliser la fonction dropna() pour supprimer les lignes avec des valeurs manquantes.

data_clean = data.dropna()

Cette fonction supprimera toutes les lignes contenant des valeurs manquantes dans les données et renverra un DataFrame avec uniquement des données complètes.

b. Remplissez les valeurs manquantes

Si les lignes contenant des valeurs manquantes ne peuvent pas être supprimées, nous pouvons choisir de remplir ces valeurs manquantes. Utilisez simplement la fonction fillna().

data_fill = data.fillna(0)

Cette fonction remplit les valeurs manquantes avec 0. Si vous souhaitez la remplir avec d'autres valeurs, vous pouvez passer la valeur correspondante entre parenthèses.

c. Convertir les types de données

Dans l'analyse des données, certains types de données doivent être convertis en types numériques ou caractères pour un calcul ou un traitement ultérieur. Dans les pandas, vous pouvez utiliser la fonction astype() pour la conversion de type.

data_conversion = data_clean.astype({'1': 'int', '2': 'str'})

Cette fonction peut convertir le type de colonne 1 dans data_clean en type entier (int) et le type de colonne 2 en type chaîne (str).

  1. Enregistrer les nouvelles données

Enfin, nous devons enregistrer les données nettoyées et traitées dans un nouveau fichier txt. Chez les pandas, nous pouvons utiliser la fonction to_csv() pour y parvenir.

data_clean.to_csv('data_clean.txt', index=False, header=False, sep='    ')

Les paramètres de la fonction sont expliqués comme suit :

  • 'data_clean.txt' : Indique le chemin et le nom du fichier enregistré.
  • index : indique s'il faut conserver l'index de ligne. Sélectionnez ici False pour ne pas le conserver.
  • header : indique si le nom de la colonne est inclus dans le fichier. Sélectionnez False ici pour l'exclure.
  • sep : Indique le séparateur ' ' est utilisé ici pour indiquer l'utilisation de la tabulation comme séparateur.

Exemple de code

Vous trouverez ci-dessous l'exemple de code complet que vous pouvez copier dans un script Python et exécuter.

import pandas as pd

# 读入数据
data = pd.read_csv('data.txt', sep='    ', header=None)
print('原始数据:
', data)

# 删除含有缺失值的行
data_clean = data.dropna()
print('处理后数据(删除缺失值):
', data_clean)

# 填充缺失值
data_fill = data.fillna(0)
print('处理后数据(填充缺失值):
', data_fill)

# 转换数据类型
data_conversion = data_clean.astype({'1': 'int', '2': 'str'})
print('处理后数据(类型转换):
', data_conversion)

# 保存新数据
data_clean.to_csv('data_clean.txt', index=False, header=False, sep='    ')

Cet article explique comment utiliser pandas pour traiter facilement les données des fichiers txt, y compris la lecture, le nettoyage, la conversion et la sauvegarde des données. En tant que l'un des outils de traitement de données importants de Python, les pandas peuvent nous aider à accomplir plus efficacement les tâches d'exploration et d'analyse 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn