Axis 在二維的時候指定是跨行還是跨列計算:
axis=0
指定跨行計算,鎖定的是不同行的一整列的數據axis=1
指定跨列計算,鎖定的是不同列的一整行的數據
import numpy as np
arr = np.array([[1,2], [3,4], [5,6]])
print(arr)
#[[1 2]
#[3 4]
#[5 6]]
# axis=0 是跨行計算,參與計算的是那一整列的數據,最終每列得到一個數字
print(arr.sum(axis=0))
# [ 9 12]
# axis=1 是跨列計算,參與計算的是那一整行的數據,最終每行得到一個數字
print(arr.sum(axis=1))
# [ 3 7 11]
注意區別Axis不僅僅用來表達跨行
或者跨列
也用來表示 行方向
或者列方向
:
import pandas as pd
import numpy as np
print(pd.DataFrame(data=np.array([[1,2], [3,4], [5,6]]), columns=['c1', 'c2']))
"""
c1 c2
0 1 2
1 3 4
2 5 6
"""
# 沿着x軸刪除,指定axis=0
print(pd.DataFrame(data=np.array([[1,2], [3,4], [5,6]]), columns=['c1', 'c2']).drop(0, axis=0))
"""
c1 c2
1 3 4
2 5 6
"""
# 沿着y軸刪除,指定axis=1
"""
c2
0 2
1 4
2 6
"""