axis=0 與 axis=1 的區分
阿新 • • 發佈:2019-01-10
官方幫助的解釋:
軸用來為超過一維陣列定義的屬性,二維資料擁有兩個軸:第0軸沿著行的方向垂直向下,第1軸沿著列的方向水平延申。
根據官方的說法,1表示橫軸,方向從左到右;0表示縱軸,方向從上到下。當axis=1時,陣列的變化是橫向的,體現出列的增加或者減少。反之,當axis=0時,陣列的變化是縱向的,體現出行的增加或減少。
下圖為dataframe中axis為0和1時的圖示:
例項:
df = pd.DataFrame([[1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3]],
columns=['col0','col1','col2','col3'])
>>>df
df.mean(axis=1) >>> 0 1.0 1 2.0 2 3.0 dtype: float64 df.mean(axis=0) >>> col0 2.0 col1 2.0 col2 2.0 col3 2.0 dtype: float64 df.drop('col2',axis=1) >>>
df.drop(0,axis=0)
>>>
用法:DataFrame.drop(labels=None,axis=0, index=None, columns=None, inplace=False)
所以,axis的重點在於方向,而不是行和列,具體體現到各種用法也是如此。
轉載於:https://blog.csdn.net/brucewong0516/article/details/79030994
np.arange(24).reshape(2,3,4) >>> array([[[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]], [[12, 13, 14, 15], [16, 17, 18, 19], [20, 21, 22, 23]]]) #生成面板資料 c = pd.Panel(np.arange(24).reshape(2,3,4)) c <class 'pandas.core.panel.Panel'> Dimensions: 2 (items) x 3 (major_axis) x 4 (minor_axis) Items axis: 0 to 1 Major_axis axis: 0 to 2 Minor_axis axis: 0 to 3 #對Items axis軸的資料進行操作,也就是panel裡面的0軸: c.sum(axis = 0) >>> 0 1 2 3 0 12 14 16 18 1 20 22 24 26 2 28 30 32 34 #對Major_axis axis軸的資料進行操作 c.sum(axis = 1) >>> 0 1 0 12 48 1 15 51 2 18 54 3 21 57 #對Minor_axis axis軸的資料進行操作 c.sum(axis = 2) >>> 0 1 0 6 54 1 22 70 2 38 86
轉載於:https://blog.csdn.net/brucewong0516/article/details/79030994