2017-08-17 4 views
1

J'ai un df avec les colonnes X1, Y1, Z3. df.describe montre les statistiques pour chaque colonneExtraction du max, min ou std à partir d'un DF pour une colonne particulière dans pandas

Je voudrais extraire le min, max et std pour dire la colonne Z3. df[df.z3].idxmax() ne semble pas fonctionner

+0

Essayez:. 'Df [ 'Z3'] min()', 'df ['Z3']. Max() ', et' df ['Z3']. Std() ' – gobrewers14

+0

Génial, merci !. Je commence tout juste à apprendre les pythons et les pandas, alors j'apprécie vraiment votre aide – Padma

+2

ou tout en une seule étape en tant que série: 'df.describe(). Loc [['min', 'max', 'std'], 'Z3 '] ' – MaxU

Répondre

1

Démo:

In [7]: df = pd.DataFrame(np.random.rand(10, 3), columns=['X1','Y1','Z3']) 

In [8]: df 
Out[8]: 
     X1  Y1  Z3 
0 0.258116 0.667943 0.954830 
1 0.584975 0.546284 0.045745 
2 0.698974 0.409223 0.307409 
3 0.073166 0.356393 0.722233 
4 0.339093 0.146043 0.614686 
5 0.624361 0.062805 0.574546 
6 0.886631 0.217291 0.258432 
7 0.403345 0.035377 0.096881 
8 0.663185 0.376171 0.593964 
9 0.789347 0.489057 0.564688 

In [9]: df.describe() 
Out[9]: 
       X1   Y1   Z3 
count 10.000000 10.000000 10.000000 
mean 0.532119 0.330659 0.473341 
std  0.255544 0.210851 0.287745 
min  0.073166 0.035377 0.045745 
25%  0.355156 0.163855 0.270676 
50%  0.604668 0.366282 0.569617 
75%  0.690027 0.469099 0.609506 
max  0.886631 0.667943 0.954830 

In [10]: df.describe().loc[['min','max','std'], 'Z3'] 
Out[10]: 
min 0.045745 
max 0.954830 
std 0.287745 
Name: Z3, dtype: float64 
1

Nouveau dans 0.20.0 pandas géants, pd.DataFrame.agg

df.agg(['min', 'max', 'std']) 

      X1  Y1  Z3 
min 0.074689 0.9 0.074912 
max 0.833935 0.981217 0.840831 
std 0.252231 0.315192 0.294872