0
votes

Comment trouver le premier décile en utilisant des pandas?

country     2013    2014   2015   2016  2017   2018

Germany     65.5    66.5   67     67.5  67.7    68
France      65.5    65.5   66     67    67      68
india       64      67     68     68    67      67.5
japan       70      71     71.5   72    73      72.5
Australia   34      34     81     82    84      84

In 2018, below which life expectancy threshold a country is in the first decile (°)?Can anyone please tell me how to find the first decile? or how to solve the above question? 

5 commentaires

Pouvez-vous dire à la sortie attendue?


Aussi, ce n'est pas clair pour moi qu'entendez-vous par première ligne "en 2018 ...". S'il vous plaît élaborer un peu en modifiant la question


Autant que je sache, le premier décile est le point de 10% des données ci-dessous et de 90% au-dessus de celle-ci.


2018 est la colonne de l'année ... qui a l'espérance de vie


J'ai compris. Veuillez partager la pièce de code que vous avez essayé afin que je puisse vous aider avec ce que vous faites mal ou où vous êtes coincé


3 Réponses :


1
votes

Ceci utilise une indexation booléenne avec QCUT pour trouver les lignes (pays) où les valeurs de 2018 tombent dans le premier décile. xxx

le résultat de pd.qcut (DF [ '2018'], bacs, étiquettes = gamme (bacs)) sera une série où chaque ligne est dans la plage de 0-9 indiquant le numéro de bac (déc affres où 0 est le premier premier décile et 9 est le dixième décile). Ensuite, nous voulons simplement trouver des lignes dans le premier décèximement (où bin est égal à 0), que nous faisons à l'aide d'un masque booléen (simplifié, df [Decile_series.eq (0)] ).


2 commentaires

Pourriez-vous s'il vous plaît élaborer votre solution un peu?


ok j'ai compris mais ma question pose ma question, quelle espérance de vie seuil que le pays est dans le premier décile ... Si je ne me trompe pas, il demande à une valeur particulière de l'espérance de vie en dessous de laquelle le pays est au premier décèri . Votre solution renvoie un Dataframe avec la liste des pays



0
votes

Si je vous comprends correctement, vous voulez trouver le premier décile de l'espérance de vie des pays de 2018?

Un décile implique de fractionnement des pays en 10 paragraphes égaux, alors je suppose que vous avez donné un petit échantillon de la liste complète des pays. P>

Pour répondre à votre question, pour obtenir des déciles, vous pouvez utiliser des pandas QCUT Fonction: Ceci essaie de diviser le données sous-jacentes aux bacs de taille égale. La fonction définit les bacs à l'aide de centiles en fonction de la distribution des données (en supposant que c'est ce dont vous avez besoin). P>

Dites que votre Dataframe est appelé df code>. P>

pd.qcut(df['2018'], q=10)


0 commentaires

0
votes

Nous pouvons le faire de cette manière:

df['2018'].quantile(0.1)


0 commentaires