Mettre à jour un fichier CSV à partir d'un autre (en python)
Résolu/Fermé
damien.1l2
-
Modifié le 13 déc. 2022 à 15:06
mamiemando Messages postés 33268 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 septembre 2024 - 9 déc. 2022 à 19:06
mamiemando Messages postés 33268 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 septembre 2024 - 9 déc. 2022 à 19:06
A voir également:
- Mettre à jour un fichier CSV à partir d'un autre (en python)
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Mettre à jour ses pilotes - Guide
- Ouvrir un fichier .bin - Guide
2 réponses
Phil_1857
Messages postés
1872
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
28 février 2024
168
9 déc. 2022 à 17:24
9 déc. 2022 à 17:24
Bonjour,
As-tu entendu parler de Pandas ?
mamiemando
Messages postés
33268
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
18 septembre 2024
7 780
Modifié le 9 déc. 2022 à 19:08
Modifié le 9 déc. 2022 à 19:08
Bonjour,
Tu peux relativement charger un fichier csv avec pandas (voir pandas.read_csv) ou avec le module csv. Ceci fait, il suffit de former deux ensembles : les produits chez le fournisseur et les produits en stock. En admettant que ces ensembles soient stockés sous forme de set, tu peux facilement faire leur intersection et leurs soustractions.
Ce serait pas mal que tu nous donnes deux exemples minimaux (en copiant collant le début de tes csv) plutôt que de nous donner une capture d'écran peu pratique.
fournisseur.csv
produit,quantite
balle,2
vélo,3
quille,6
hochet,1
dé,2
stock.csv
produit,quantite
balle,2
diabolo,1
roller,2
quille,6
programme.py
import pandas as pd print("-" * 80) print("fournisseur") df1 = pd.read_csv("fournisseur.csv") print(df1) print("-" * 80) print("stock") df2 = pd.read_csv("stock.csv") print(df2) print("-" * 80) print("comparaison") s1 = set(df1["produit"]) s2 = set(df2["produit"]) print(s1 - s2) print(s2 - s1) print(s1 & s2)
Résultat
--------------------------------------------------------------------------------
fournisseur
produit quantite
0 balle 2
1 vélo 3
2 quille 6
3 hochet 1
4 dé 2
--------------------------------------------------------------------------------
stock
produit quantite
0 balle 2
1 diabolo 1
2 roller 2
3 quille 6
--------------------------------------------------------------------------------
comparaison
{'dé', 'vélo', 'hochet'}
{'roller', 'diabolo'}
{'balle', 'quille'}
Bonne chance
9 déc. 2022 à 17:33
Salut !
Oui j'ai lu toute la doc mais j'ai pas réussi a en tirer grand chose...