Python 如何在数据框中选择两行,计算每列中两个值的平均值,并将新行与数据框中的平均值相加

Python 如何在数据框中选择两行,计算每列中两个值的平均值,并将新行与数据框中的平均值相加,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个数据框: col1 col2 col3 0 8 7 5 1 6 2 17 2 3 1 21 3 4 3 9 我想计算第1行和第2行每列的平均值,并将新行添加到我的数据帧中,得到: col1 col2 col3 0 8 7 5 1 6 2 2 2 3 1 4 3 4

我有一个数据框:

      col1  col2  col3
0      8     7     5
1      6     2     17
2      3     1     21
3      4     3     9
我想计算第1行和第2行每列的平均值,并将新行添加到我的数据帧中,得到:

      col1  col2  col3
0      8     7     5
1      6     2     2
2      3     1     4
3      4     3     9
4     4.5    1.5   3

您可以执行
concat

pd.concat((df, df.iloc[[1,2]].mean().to_frame().T)).reset_index(drop=True)
输出:

   col1  col2  col3
0   8.0   7.0   5.0
1   6.0   2.0  17.0
2   3.0   1.0  21.0
3   4.0   3.0   9.0
4   4.5   1.5  19.0
   col1  col2  col3
0   8.0   7.0   5.0
1   6.0   2.0  17.0
2   3.0   1.0  21.0
3   4.0   3.0   9.0
4   4.5   1.5  19.0
或附加:

df.append(df.iloc[[1,2]].mean().rename(len(df)))
输出:

   col1  col2  col3
0   8.0   7.0   5.0
1   6.0   2.0  17.0
2   3.0   1.0  21.0
3   4.0   3.0   9.0
4   4.5   1.5  19.0
   col1  col2  col3
0   8.0   7.0   5.0
1   6.0   2.0  17.0
2   3.0   1.0  21.0
3   4.0   3.0   9.0
4   4.5   1.5  19.0

您可以执行
concat

pd.concat((df, df.iloc[[1,2]].mean().to_frame().T)).reset_index(drop=True)
输出:

   col1  col2  col3
0   8.0   7.0   5.0
1   6.0   2.0  17.0
2   3.0   1.0  21.0
3   4.0   3.0   9.0
4   4.5   1.5  19.0
   col1  col2  col3
0   8.0   7.0   5.0
1   6.0   2.0  17.0
2   3.0   1.0  21.0
3   4.0   3.0   9.0
4   4.5   1.5  19.0
或附加:

df.append(df.iloc[[1,2]].mean().rename(len(df)))
输出:

   col1  col2  col3
0   8.0   7.0   5.0
1   6.0   2.0  17.0
2   3.0   1.0  21.0
3   4.0   3.0   9.0
4   4.5   1.5  19.0
   col1  col2  col3
0   8.0   7.0   5.0
1   6.0   2.0  17.0
2   3.0   1.0  21.0
3   4.0   3.0   9.0
4   4.5   1.5  19.0

然而,它为行的索引提供了0。然而,它为行的索引提供了0