Comment ajouter une nouvelle colonne dérivée de données existantes à un fichier CSV à l'aide de Python ?

DDD
Libérer: 2024-10-21 21:00:30
original
196 Les gens l'ont consulté

How to Add a New Column Derived from Existing Data to a CSV File Using Python?

Modification des fichiers CSV : ajout d'une nouvelle colonne

Énoncé du problème

Étant donné un fichier CSV avec des colonnes nommées « Nom » et « Code », nous vise à ajouter une nouvelle colonne appelée « Berry » avec des valeurs dérivées de la colonne « Nom ». Le résultat souhaité doit ressembler à :

Name        Code    Berry
blackberry  1   blackberry
wineberry   2   wineberry
rasberry    1   rasberry
blueberry   1   blueberry
mulberry    2   mulberry
Copier après la connexion

Solution proposée

En utilisant Python et le module CSV, nous pouvons manipuler les fichiers CSV comme suit :

  1. Ouvrez le fichier CSV d'entrée pour la lecture et le fichier CSV de sortie pour l'écriture.
  2. Parcourez chaque ligne du fichier d'entrée à l'aide de csv.reader.
  3. Pour chaque ligne, ajoutez la valeur souhaitée pour le nouveau ' Colonne de Berry.
  4. Écrivez les lignes modifiées dans le fichier de sortie à l'aide de csv.writer.

Voici un exemple de script :

<code class="python">import csv

with open('input.csv', 'r') as input_file, open('output.csv', 'w') as output_file:
    reader = csv.reader(input_file)
    writer = csv.writer(output_file)

    # Read the header row and add the new column
    header = next(reader)
    header.append('Berry')
    writer.writerow(header)

    # Iterate over the remaining rows and modify them
    for row in reader:
        row.append(row[0])    # Set the 'Berry' column to the 'Name' column
        writer.writerow(row)</code>
Copier après la connexion

Considérations notables

  • Les fonctions csv.reader et csv.writer gèrent respectivement la lecture et l'écriture de lignes depuis et vers les fichiers CSV.
  • La fonction open avec l'instruction with garantit une gestion et un nettoyage corrects des fichiers.
  • La fonction next(reader) lit la première ligne (en-tête) et avance l'itérateur, ce qui est nécessaire pour ajouter la nouvelle colonne à l'en-tête.
  • En Python 3, l'itérateur obtenu à partir de csv .reader génère des tuples, nous devons donc les convertir en listes avant de les modifier et de les écrire.

En suivant ces étapes, nous pouvons ajouter avec succès une nouvelle colonne à nos fichiers CSV, améliorant ainsi leur représentation des 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!

source:php
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!