既可以使用数组实列的方法,也可以调用顶层的 Numpy 函数。
In [92]: arr = np.random.randn(5, 4)
In [93]: arr
Out[93]:
array([[ 0.40078213, 0.18221019, 0.33039728, -0.17005462],
[ 0.06459178, -1.25292774, 0.22437965, 0.30838516],
[-0.40874228, -0.68919994, 1.65989984, 0.73510201],
[-0.07695719, -0.25494756, 0.45742598, -1.2483983 ],
[ 0.01360322, 1.41888667, 1.43997912, 1.1402712 ]])
In [94]: arr.mean()
Out[94]: 0.21373432899920713
In [95]: np.mean(arr)
Out[95]: 0.21373432899920713
In [96]: arr.sum()
Out[96]: 4.2746865799841425
In [97]: arr.mean(axis=1)
Out[97]: array([ 0.18583375, -0.16389279, 0.3242649 , -0.28071927, 1.00318505])
In [98]: arr.sum(axis=0)
Out[98]: array([-0.00672234, -0.59597839, 4.11208186, 0.76530544])
arr.mean(1)
表示每一列的平均值,arr.sum(0)
表示行和。
In [99]: arr = np.array([0, 1, 2, 3, 4, 5, 6, 7])
In [100]: arr.cumsum()
Out[100]: array([ 0, 1, 3, 6, 10, 15, 21, 28], dtype=int32)
In [102]: arr = np.array([[0, 1, 2], [3, 4, 5], [6, 7, 8]])
In [103]: arr
Out[103]:
array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])
In [104]: arr.cumsum(axis = 0)
Out[104]:
array([[ 0, 1, 2],
[ 3, 5, 7],
[ 9, 12, 15]], dtype=int32)
In [105]: arr.cumprod(axis = 1)
Out[105]:
array([[ 0, 0, 0],
[ 3, 12, 60],
[ 6, 42, 336]], dtype=int32)
0代表列的计算,1代表行的计算,即对列和行分别累积求和、 积。(《利用python进行数据分析》113页)
网友评论