formateur informatique

Calculs de rangs par formule Python dans Excel

Accueil  >  Bureautique  >  Excel  >  Excel Avancé  >  Calculs de rangs par formule Python dans Excel
Livres à télécharger


Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :


Inscription Newsletter    Abonner à Youtube    Vidéos astuces Instagram
Sujets que vous pourriez aussi aimer :


Trier sur les classements

La méthode Python rank permet de réaliser des calculs de rangs sur des scores pour effectuer des classements. Nous allons ici l'étudier.

Classeur Excel à télécharger
Nous entendons baser l'étude sur un classeur Excel existant. Tableau Excel des moyennes générales

Nous travaillons à partir d'un tableau des élèves avec des moyennes générales.

Le DataFrame
Pour débuter et comme il est de coutume, nous devons commencer par encapsuler les données du tableau Excel dans un DataFrame pour pouvoir les piloter par des méthodes Python.
  • Cliquer sur la cellule L1 pour sélectionner la case grisée,
  • Réaliser le raccourci clavier CTRL + ALT + MAJ + P pour activer Python,
  • Taper le début de syntaxe suivant : res=,
res est le nom que nous souhaitons attribuer à notre DataFrame.
  • Dès lors, sélectionner toutes les données du tableau, ce qui donne :
res=xl("B3:J11",headers=True)

Mais nous ne souhaitons conserver que quelques colonnes.
  • A la suite de la syntaxe, ajouter l'énumération des colonnes souhaitées comme suit :
res=xl("B3:J11",headers=True)[['Nom', 'Prénom', 'Moyenne']]
  • Valider la syntaxe par le raccourci clavier CTRL + Entrée,
Ainsi, nous construisons un DataFrame représentant les colonnes Nom, Prénom et Moyenne à partir du tableau source.

Calculer les rangs
En-dessous et à partir de la cellule L3, nous souhaitons calculer les rangs à partir de ces moyennes grâce à la méthode Python rank.
  • Cliquer sur la cellule L3 pour la sélectionner,
  • Réaliser le raccourci clavier CTRL + ALT + MAJ + P pour activer Python,
  • Puis sur le DataFrame res, bâtir la syntaxe suivante sur deux lignes :
res['Rang'] = res['Moyenne'].rank(ascending = False)
res
  • Valider la formule par le raccourci clavier CTRL + Entrée,
Nous obtenons un nouveau DataFrame. Nous ajoutons une colonne Rang (res['Rang']). Avec le paramètre ascending réglé à False, nous indiquons à la méthode rank, appliquée sur la colonne Moyenne, de classer les valeurs en ordre décroissant, ce qui donnera le rang 1 à la meilleure moyenne. Puis, nous restituons le nouveau DataFrame avec ses rangs(res).
  • A gauche de la barre de formule, cliquer sur la flèche orientée vers le bas,
  • Dans les propositions, choisir Valeur Excel,
Calculs de rangs et classements par formule Python dans Excel

Nous obtenons bien une restitution du tableau d'origine, comprimé sur les quelques colonnes que nous avons commandées avec les rangs qui sont sans équivoque quant au classement des candidats.

Nous pourrions même améliorer la solution en ajoutant un tri sur les rangs, comme suit :

res['Rang']=res['Moyenne'].rank(ascending = False)
res.sort_values('Rang').reset_index(drop = True)


 
Sur Facebook
Sur Youtube
Les livres
Contact
Mentions légales



Abonnement à la chaîne Youtube
Partager la formation
Partager sur Facebook
Partager sur Twitter
Partager sur LinkedIn