Catégorie : Logiciels de tableur

  • Devenez le Maître des Tableaux Excel avec Python ! 🐍📊

    Devenez le Maître des Tableaux Excel avec Python ! 🐍📊

    Salut les codeurs et les amateurs de données ! Aujourd’hui, nous allons plonger dans le monde merveilleux de Python et des tableaux Excel. Vous avez déjà eu des tableaux avec des cellules vides qui devraient contenir la même valeur que la cellule précédente ? Pas de panique ! Nous avons un script pour ça. Et le meilleur ? C’est super facile et amusant à faire ! 🎉

    Pourquoi ce script est-il génial ?

    Imaginez que vous avez un tableau Excel avec des informations sur des astéroïdes et des comètes. Certaines cellules de la première colonne sont vides, mais elles devraient contenir la même valeur que la cellule précédente. Plutôt que de remplir ces cellules manuellement (quelle corvée !), nous allons utiliser Python pour le faire automatiquement. 🚀

    Ce dont vous avez besoin

    Avant de commencer, assurez-vous d’avoir les éléments suivants :

    • Python 3.x
    • Les bibliothèques Pandas et Openpyxl

    Pour installer les bibliothèques nécessaires, ouvrez votre terminal (ou invite de commande) et tapez :

    pip install pandas openpyxl
    

    Le Script Magique 🪄

    Voici le script Python qui va sauver votre journée :

    # -*- coding: utf-8 -*-
    """
    Remplir Colonne Type
    
    Description:
    Ce script Python a pour but de remplir les valeurs manquantes dans la première colonne d'un fichier Excel avec la valeur précédente de la colonne. Cela est particulièrement utile pour les tableaux où certaines cellules de la première colonne sont vides mais devraient contenir la même valeur que la cellule précédente.
    
    Functionality:
    This Python script aims to fill in missing values in the first column of an Excel file with the previous value in the column. This is particularly useful for tables where some cells in the first column are empty but should contain the same value as the previous cell.
    
    License:
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
    
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    GNU General Public License for more details.
    
    You should have received a copy of the GNU General Public License
    along with this program. If not, see <https://www.gnu.org/licenses/>.
    """
    
    import pandas as pd
    
    def remplir_colonne_type(file_path: str, output_file_path: str) -> None:
        """
        Charger le fichier Excel, remplir les valeurs manquantes dans la première colonne,
        et sauvegarder le DataFrame mis à jour dans un nouveau fichier Excel.
    
        Load the Excel file, fill missing values in the first column, and save the updated DataFrame to a new Excel file.
    
        :param file_path: Chemin du fichier Excel à charger / Path to the Excel file to load
        :param output_file_path: Chemin du fichier Excel de sortie / Path to the output Excel file
        """
        # Charger le fichier Excel
        # Load the Excel file
        df = pd.read_excel(file_path, engine='openpyxl')
        
        # Assertion pour vérifier que le DataFrame n'est pas vide
        # Assertion to check that the DataFrame is not empty
        assert not df.empty, "Le fichier Excel est vide / The Excel file is empty"
        
        # Afficher les premières lignes pour vérifier les colonnes
        # Display the first few rows to check the columns
        print(df.head())
        
        # Remplir les valeurs manquantes dans la première colonne avec la valeur précédente de la colonne
        # Fill missing values in the first column with the previous value in the column
        df.iloc[:, 0] = df.iloc[:, 0].fillna(method='ffill')
        
        # Assertion pour vérifier que les valeurs manquantes ont été remplies
        # Assertion to check that missing values have been filled
        assert df.iloc[:, 0].isnull().sum() == 0, "Il reste des valeurs manquantes dans la première colonne / There are still missing values in the first column"
        
        # Sauvegarder le DataFrame mis à jour dans un fichier Excel
        # Save the updated DataFrame to a new Excel file
        df.to_excel(output_file_path, index=False)
        
        print(f"Le tableau mis à jour a été sauvegardé dans {output_file_path}.")
        print(f"The updated table has been saved to {output_file_path}.")
    
    # Chemin du fichier Excel à charger et du fichier de sortie
    # Path to the Excel file to load and the output file
    file_path = 'tableConvert.com_o2we7a.xlsx.xlsx'
    output_file_path = 'updated_table.xlsx'
    
    # Appel de la fonction pour remplir la colonne et sauvegarder le fichier
    # Call the function to fill the column and save the file
    remplir_colonne_type(file_path, output_file_path)
    

    Comment ça marche ?

    1. Charger le fichier Excel : Le script commence par charger votre fichier Excel grâce à la bibliothèque pandas.
    2. Vérifier le contenu : Il vérifie que le fichier n’est pas vide (parce que personne n’aime les fichiers vides, n’est-ce pas ?).
    3. Remplir les valeurs manquantes : Il remplit les cellules vides de la première colonne avec la valeur précédente.
    4. Sauvegarder le fichier mis à jour : Enfin, il sauvegarde le tableau mis à jour dans un nouveau fichier Excel.

    Exécution du script

    Pour exécuter le script, assurez-vous que votre fichier Excel est dans le même répertoire que le script. Ensuite, ouvrez votre terminal et tapez :

    python remplir_colonne_type.py
    

    Et voilà ! Votre tableau Excel est maintenant complet et prêt à être utilisé. 🎉

    Conclusion

    Avec ce script, vous pouvez dire adieu aux cellules vides et bonjour à des tableaux parfaitement remplis. Python et Pandas rendent la manipulation des données tellement plus facile et amusante. Alors, qu’attendez-vous ? Essayez-le et devenez le maître des tableaux Excel ! 🐍📊

    N’hésitez pas à partager vos expériences et à poser des questions dans les commentaires. Bon codage !

    Plus de détails sur mon site Git-Hub : https://github.com/steveprudhomme/remplir_colonne_type

    Médiagraphie

    Breakthrough Listen. (n.d.). Exotic Target Catalog. Récupéré de http://seti.berkeley.edu/exotica/
    Lacki, B. C., Lebofsky, M., Isaacson, H., Siemion, A., Sheikh, S., Croft, S., … & Werthimer, D. (2020). One of Everything: The Breakthrough Listen Exotica Catalog. arXiv. Récupéré de https://arxiv.org/pdf/2006.11304.pdf
    Python Software Foundation. (2023). Pandas documentation. Repéré le 4 janvier 2025 à https://pandas.pydata.org/pandas-docs/stable/
    Python Software Foundation. (2023). Openpyxl documentation. Repéré le 4 janvier 2025 à https://openpyxl.readthedocs.io/en/stable/
    TableConvert. (n.d.). Convert LaTeX Table to Excel Online. Récupéré de https://tableconvert.com/latex-to-excel