Aller au-dela de value_counts () : creer des tableaux de frequences visuellement attrayants avec juste 3 lignes de code (a l’assistance de informations OkCupid)
Quelques astuces simples mais indispensables que vous ne connaissiez probablement nullement
Correctement que le moyen le plus aise de creer une table de frequences pour 1 objet Series dans la bibliotheque Python pandas consiste a appliquer la value_counts() technique, le resultat de cette operation paraiĀ®t plutot basique. Nous pouvons le rendre plus informatif en ajustant des parametres booleens d’une methode normalize , sort , ascending , et dropna , ou en regroupant nos valeurs (si elles seront numeriques) dans des bacs. Cependant, les laternatives ici sont assez limitees, donc Afin de ameliorer visuellement la table de frequences resultante, nous pouvons envisager des astuces simples mais indispensables, telles que le chainage de methodes, la personnalisation du post, l’ajout du % symbole a chaque valeur de frequence et l’utilisation une puissance de jolie- impression.
Dans cet article, nous allons experimenter un ensemble de donnees Kaggle contenant des informations sur l’age, le sexe, l’emplacement, l’education, etc., Afin de 60 000 utilisateurs de l’ application de rencontres OkCupid ??. Pour les besoins, cependant, nous n’utiliserons que nos donnees sur les statuts des utilisateurs.
1. Enchainement des methodes
Pour commencer, creons un tableau de frequence de base Afin de des statuts des utilisateurs :
( Note : ci-apres, nous allons laisser la totalite des autres parametres d’la value_counts() technique via defaut, et cela signifie que nous ne considererons que les tableaux de frequences tries avec ordre decroissant et en excluant les valeurs manquantes. Pour des besoins, se servir de ou non ces parametres ne peu importe.)
Sans connaitre le contexte, a partir du tableau ci-dessus, il pourra ne point etre net que nos nombres representent des pourcentages et non des frequences absolues. Ajoutons un titre au tableau en utilisant le formatage f-string :
Dans l’exemple ci-dessus, nous avons ajoute le % symbole au titre du tableau. Et si nous voulions plutot l’ajouter a chaque valeur de frequence ? Une solution de contournement consiste a creer une liste de valeurs de frequence avec le % symbole ajoute a chacune d’entre elles, et a creer une serie a partir de cette liste. Pour faire la liste, nous pouvons utiliser la boucle for suivante :
Enfin, nous pouvons joliment imprimer le tableau des frequences. Pour cela, nous allons utiliser la to_markdown() methode pandas qui necessite l’installation (souvent pas l’import) du module tabulate ( pip install tabulate ).
Important : Afin de afficher correctement les resultats, la to_markdown() get it on methode doit etre utilisee seulement a l’interieur de la print() achat.
Montrons a nouveau la table de frequence d’etat de l’utilisateur appelee s_with_pct_symb , cette fois comme une vraie table, en utilisant la syntaxe de base de to_markdown() . Comme precedemment, nous allons ajouter un titre en gras et appliquer le formatage f-string. Par souci de coherence, nous affecterons ci-apres la table de frequence a afficher a une variable appelee S ” :
Jouons avec les parametres tablefmt et stralign . Le premier d’entre eux definit le format du tableau et peut avoir l’une des valeurs suivantes : plain , simple , github , grid , fancy_grid , pipe , orgtbl , jira , presto , pretty , psql , rst , etc. comme, le format de tableau que nous avons vu plus haut s’appelle pipe , celui via defaut pour les to_markdown() pandas methode. Curieux que pour le package tabulate lui-meme, le format de tableau par defaut est simple . Quant au deuxieme parametre, stralign , il sert a remplacer l’alignement des donnees de chaine par defaut (qui reste left ). Les options possibles ici sont right et center .
Attention : le floatfmt parametre ne fonctionne jamais en combinaison avec le format du tableau pretty .
Plats a emporter pratiques
Correctement que l’ensemble de la procedure jamais a jamais ci-dessus ait necessite de multiples iterations et descriptions, nous trouverons ci-dessous des solutions de code finales pour 4 versions differentes de notre tableau des frequences pour profiles[‘status’] , l’article en % :
- 2 tableaux simples avec/sans le % symbole,
- 2 jolis tableaux imprimes avec/sans le % symbole et avec/sans en-tete de tableau.
Dans ce post, nous avons discute de quelques approches simples mais puissantes pour ameliorer la disposition du tableau des frequences et la lisibilite globale. Ils ont l’ensemble de ma value_counts() technique des pandas comme facteur central, mais tous vont au-dela et aboutissent a des representations plus percutantes. En plus, chacune des solutions proposees, dans sa forme definitive, necessite au maximum 3 lignes de code.
J’espere que vous avez apprecie la lecture du article et que vous l’avez trouve utile. Merci d’avoir lu a tout un chacun, et bonne chance a ceux qui utilisent l’application de rencontres OkCupid ????
Vous pourrez trouver interessant aussi ces articles :