web-dev-qa-db-fra.com

médiane du cadre de données des pandas

J'ai un DataFrame df:

name   count    
aaaa   2000    
bbbb   1900    
cccc    900    
dddd    500    
eeee    100

Je voudrais regarder les lignes qui sont à un facteur de 10 de la médiane de la colonne de comptage.

J'ai essayé df['count'].median() et obtenu la médiane. Mais je ne sais pas comment procéder plus loin. Pouvez-vous suggérer comment je pourrais utiliser pandas/numpy pour cela?.

Production attendue :

name count distance from median

aaaa  2000   *****

Je peux utiliser n’importe quelle mesure comme distance à la médiane (écart absolu par rapport à la médiane, quantiles, etc.). 

6
Ssank

Si vous cherchez comment calculer la déviation absolue médiane -

In [1]: df['dist'] = abs(df['count'] - df['count'].median())

In [2]: df
Out[2]:
   name  count  dist
0  aaaa   2000  1100
1  bbbb   1900  1000
2  cccc    900     0
3  dddd    500   400
4  eeee    100   800

In [3]: df['dist'].median()
Out[3]: 800.0
13
ComputerFellow

Si vous voulez voir la médiane, vous pouvez utiliser df.describe (). La valeur de 50% est la médiane. 

1
Marjan Alavi

Écart absolu médian,

 enter image description here

pour une colonne, vous pouvez également calculer à l'aide de statsmodels.robust.scale.mad , auquel on peut également appliquer une constante de normalisation c qui, dans ce cas, n'est que de 1. 

>>> from statsmodels.robust.scale import mad
>>> mad(df['count'], c=1)
800.0
1
miradulo