Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :
Lignes strictement identiques entre 2 tableaux
Nous poursuivons la série sur la
comparaison de tableaux Excel par le biais de
formules Python . Dans le volet précédent, nous avons appris à extraire les
lignes strictement différentes . Ici le but est à l'opposé. L'objectif est d'extraire les
lignes strictement identiques , donc en excluant les lignes qui diffèrent.
Classeur Excel à télécharger
Nous suggérons d'appuyer l'étude sur un classeur Excel existant.
Nous découvrons
deux tableaux Excel à comparer donc. Au-dessus,
deux DataFrames Python les embarquent respectivement. Nous les avons nommés
tab1 et
tab2 . Sur la droite, une grille vide est en attente de l'extraction des lignes strictement identiques.
Les index directeurs
Comme nous l'avons appris à l'occasion d'une précédente formation dans la
comparaison des tableaux , nous devons commencer par définir les
index directeurs . L'objectif est d'indiquer que la comparaison doit se faire
ligne à ligne , c'est-à -dire à la fois sur le nom et le prénom.
Cliquer sur la première case de la grille d'extraction pour sélectionner la cellule H5 ,
Réaliser le raccourci clavier CTRL + ALT + MAJ + P pour activer Python ,
Puis, débuter la syntaxe avec les deux lignes suivantes :
tab1.set_index(["Nom", "Prénom"], inplace=True)
tab2.set_index(["Nom", "Prénom"], inplace=True)
Trouver l'intersection
Avant de joindre les tableaux, nous devons trouver les index communs pour les filtrer.
Poursuivre la construction de la formule Python avec les trois lignes suivantes :
index_communs = tab1.index.intersection(tab2.index)
tab1_commun = tab1.loc[index_communs]
tab2_commun = tab2.loc[index_communs]
Avec la première des trois lignes, nous trouvons l'intersection des index. Avec les deux suivantes, nous filtrons les tableaux pour ne garder que les lignes avec les index communs.
Joindre les tableaux filtrés
Il ne nous reste plus qu'à joindre ces tableaux filtrés. Et pour cela, contrairement à la formation précédente, ce n'est pas la méthode Python merge qui est à l'honneur. C'est la
méthode Python Join qui doit s'illustrer.
Terminer la syntaxe de la formule comme suit :
resultat = tab1_commun.join(tab2_commun, sort=True)
Avec le paramètre Sort réglé à True, nous engageons un tri croissant sur les tableaux filtrés réunis. Nous obtenons un nouveau DataFrame que nous allons nous empresser de convertir en données.
A gauche de la barre de formule, cliquer sur la flèche orientée vers le bas,
Dans les propositions, choisir Valeur Excel ,
Nous obtenons un tableau plus court et pour cause, seules les lignes strictement identiques sont retenues.