Exporter valeurs uniques (lignes) python panda excel
RésoluBonjour,
Voici un script qui renvoit toutes les valeurs de mon tableau excel.
J'ai beaucoup de valeurs row['pn'] en doubles.
Je souhaiterai conserver uniquement les valeurs uniques de celle-ci
tout gardant un numéro incrémenté pour chaque ligne différente définit par append (i) i=i+1
Je sais uniquement
obtenir des lignes à valeurs uniques mais pour i=1
en utilisant le script suivant:
for index, row in dataframe_feuil1.iterrows(): ligne.append(million) ligne.append(row['kit']) ligne.append(row['pn']) ligne.append(i) '''listing.append(ligne)''' if ligne not in unique_ligne: unique_ligne.append(ligne) i=1 ligne = []
import pandas as pd import numpy as np import openpyxl # Ouverture du fichier Excel df1= dataframe_feuil1 = pd.read_excel('C:\\Users\\XXXXXX\\PycharmProjects\\pythonProject5\\PIM-creation\\fichier_unique.xlsx',engine='openpyxl',sheet_name='Feuil1') df1['8million']=df1['8million'].astype(str).str.replace('.0','') liste2D= [] # va être transformé en Dataframe après remplissage ligne=[] unique_ligne=[] liste_million=[] listing=[] i=1 for index,row in dataframe_feuil1.iterrows():# parcourir ligne par ligne if(row['8million']!='nan'): # renvoi le PN kit si la cellule est vide ou non liste_million.append(row['8million']) for million in liste_million: for index, row in dataframe_feuil1.iterrows(): ligne.append(million) ligne.append(row['kit']) ligne.append(row['pn']) ligne.append(i) listing.append(ligne) i=i+1 ligne = [] print(listing) df2= pd.DataFrame(listing) df2.columns=["A","B","C","D"] df2.to_excel('fichier_result.xlsx',sheet_name='Feuil1',index=False)
Windows / Chrome 126.0.0.0
- Exporter valeurs uniques (lignes) python panda excel
- Liste déroulante excel - Guide
- Panda antivirus - Télécharger - Antivirus & Antimalwares
- Exporter favoris chrome - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
4 réponses
bonjour,
dans le deuxiéme code que tu partages, il manque la vérification de l'unicité.
Pourquoi commencer cette nouvelle discussion, plutôt que continuer celle en cours?
Bonjour,
Si tu veux un code efficace, il faut utiliser les primitives offertes par pandas, en l'occurrence pandas.DataFrame.drop_duplicates. Regarde cet exemple pour comprendre comment l'utiliser.
Voir le reste de la discussion ici.
Bonne chance
Inutile de partager ton fichier Excel, il est préférable d'ajouter des print() dans ton code, afin d'afficher tes listes.