Suppress dtype name from python pandas describe

Say I have

r = pd.DataFrame({'A':1 , 'B':pd.Series(1,index=list(range(4)),dtype='float32')}) 

And r['B'].describe()[['mean','std','min','max']] gives the result:

 mean 1.0 std 0.0 min 1.0 max 1.0 Name: B, dtype: float64 

But from the above output, how do I get rid or break the last line " Name:B, dtype: float64 "

I figured out one way to achieve this

 x=r['B'].describe()[['mean','std','min','max']] print "mean ",x['mean'],"\nstd ",x['std'],"\nmin ",x['min'],"\nmax ",x['max'] 

which gives the desired result:

 mean 1.0 std 0.0 min 1.0 max 1.0 

Is there any cleaner to achieve this result directly from pd.describe ()

+7
python pandas format dataframe series
source share
2 answers

If you need output as a DataFrame add reset_index :

 x=r['B'].describe()[['mean','std','min','max']].reset_index() print (x) index B 0 mean 1.0 1 std 0.0 2 min 1.0 3 max 1.0 

And then use DataFrame.to_string :

 print (x.to_string(header=None, index=None)) mean 1.0 std 0.0 min 1.0 max 1.0 
+5
source share

best answer
use to_csv in dataframe

 rd = rBdescribe()[['mean','std','min','max']].reset_index() print(rd.to_csv(header=None, index=None, sep='\t')) mean 1.0 std 0.0 min 1.0 max 1.0 

old answer

 for name, value in r['B'].describe()[['mean','std','min','max']].iteritems(): print('{:<5s} {:2.1f}'.format(name, value)) mean 1.0 std 0.0 min 1.0 max 1.0 
+4
source share

All Articles