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 ?
- Charger le fichier Excel : Le script commence par charger votre fichier Excel grâce à la bibliothèque
pandas. - 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 ?).
- Remplir les valeurs manquantes : Il remplit les cellules vides de la première colonne avec la valeur précédente.
- 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
