为什么 pandas.DataFrame.sum(axis=0) 返回每列中的值的总和,其中 axis =0 代表行?

Raj*_*har 10 python data-analysis pandas data-science

在pandas中,axis=0代表行axis=1代表列。因此,要获取 pandas 中每行值的总和,请调用 df.sum(axis=0) 。但它返回每列中的值的总和,反之亦然。为什么???

import pandas as pd
df=pd.DataFrame({"x":[1,2,3,4,5],"y":[2,4,6,8,10]})
df.sum(axis=0)
Run Code Online (Sandbox Code Playgroud)

数据框:

   x   y
0  1   2

1  2   4

2  3   6

3  4   8

4  5  10
Run Code Online (Sandbox Code Playgroud)

输出:

x    15

y    30
Run Code Online (Sandbox Code Playgroud)

预期输出:

0     3

1     6

2     9

3    12

4    15
Run Code Online (Sandbox Code Playgroud)

小智 13

我认为解释axis参数的正确方法是您在“上方”(或“横跨”)求和的轴,而不是计算总和的“方向”。指定计算axis = 0行上的总和,为您提供每个行的总计柱子; axis = 1计算各列的总和,为您提供每行的总计。