在pandas一些函數(shù)中,經(jīng)常會碰到axis的使用,有時等于0,有時等于1,有的函數(shù)使用起來和別的函數(shù)正好相反,對于初學(xué)者來說,感覺弄得暈頭轉(zhuǎn)向,老是分不清楚,這里就幫你理清一下。
axis的英文意思是坐標(biāo)軸,在pandas中表示坐標(biāo)軸的方向。
在一維數(shù)組中,也就是對象Series,只有一個軸向,axis只能等于0。
在二維數(shù)組中,也就是DataFrame,有兩個軸向,axis等于0或者1。
在n維數(shù)組中,擁有n個軸向,axis等于0,1,2,3……
在pandas中,常見的是DataFrame數(shù)據(jù)結(jié)構(gòu)。
axis=0表示跨行,沿著行索引向下執(zhí)行方法。
axis=1表示跨列,沿著列標(biāo)簽橫向執(zhí)行方法。
案例說明:
1、數(shù)據(jù)框中求和函數(shù)使用axis

對二維數(shù)組進(jìn)行求和,df.sum(0),也就是axis=0,沿著行索引向下求和,也就是列標(biāo)簽的求和。

在df.sum(1)中,axis=1,表示沿著列標(biāo)簽橫向求和,也就是行索引的求和,添加到原數(shù)據(jù)框中,會產(chǎn)生新的列。
2、刪除函數(shù)中使用axis

我們在原數(shù)據(jù)框中刪除B列的內(nèi)容,需要用到drop函數(shù),這里必須用axis=1,然后才能識別到是B列內(nèi)容,最后執(zhí)行刪除列操作。

刪除行的操作,只需要axis=0即可,其他函數(shù)同樣如此,多維度的數(shù)據(jù)在計算時,需要指定哪個軸向,然后才能進(jìn)一步的計算。