Created
June 27, 2017 12:52
-
-
Save anahochen/3cdd6e67591bce22b42200ee60cebacd to your computer and use it in GitHub Desktop.
Fonctions pour lire fichier Excel vers Data Frame
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#============================================================================== | |
# Fonction qui bascule des données Excel en data frame | |
# | |
# fichier - nom du fichier à lire | |
# onglet - onglet du fichier à lire | |
# entete - ligne à utiliser en tant que entête du tableau (0 est la 1ère ligne) | |
# colonnes - colonnes à lire (en notation Excel : A, B, C, ..., AA) | |
# | |
# df - data frame | |
#============================================================================== | |
def loadDonnees(fichier, onglet, entete, index, colonnes): | |
import pandas | |
data = fichier | |
df = pandas.read_excel(data, onglet, header = entete, index_col= index, parse_cols=colonnes) | |
return df | |
#============================================================================== | |
# Fonction qui lit les données | |
# | |
# fichier - nom du fichier à lire | |
# dfTroncons - DataFrame qui regroupe les données des tronçons | |
#============================================================================== | |
def lecture(fichier): | |
import pandas | |
import time | |
print("Début de la lecture") | |
# Lecture du tableau A | |
dfA = loadDonnees(fichier, 'Feuille B',1,None,"A,B,C,D,E,F,H,N,S,T,U,V,W,AJ,AL,AM,AN") | |
print ("Lecture finie") | |
print ("dfA prêt à l'utilisation") | |
# Lecture du tableau B | |
dfB = loadDonnees(fichier, 'Feuille B',1,None, "A,B,C,D,E,F,G,H,I,J,K,L,M" ) | |
print ("Lecture finie") | |
print ("dfB prêt à l'utilisation") | |
# Fusionner Tableau A avec Tableau B selon ID | |
dfC = pandas.merge(dfA, dfB, on ='Id Ligne', how='inner') | |
print ("Jointure finie") | |
return dfC |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment