Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

adding a row to pandas dataframe with column averages [duplicate]

Tags:

python

pandas

I have a pandas dataframe

 df = pd.DataFrame([[0,1,10,15],[1,5,7,10],[10,15,0,0]], columns=['Apple','Orange','Banana','Pear'], index=['basket1','basket2','basket3'])

I need to generate a dataframe that looks like

Fruit   Apple   Orange   Banana  Pear  mean_basket

basket1   0        1       10     15     6.5

basket2   1        5        7     10     5.75

basket3   10       15       0      0     6.25

mean_fruit 3.66     7       5.66   8.33   6.16

I did df['mean_basket'] = df.mean(axis=1) and generated the last column. By df.mean(axis=0), I get the mean of each column but I do not know how to add it as a new row to the dataframe. Please help.

like image 639
Ssank Avatar asked Aug 30 '25 17:08

Ssank


1 Answers

df = pd.DataFrame([[0,1,10,15],[1,5,7,10],[10,15,0,0]], columns=['Apple','Orange','Banana','Pear'], index=['basket1','basket2','basket3'])
df['mean_basket'] = df.mean(axis=1)
df.loc['mean_fruit'] = df.mean()
df
like image 174
Scott Boston Avatar answered Sep 02 '25 19:09

Scott Boston