numpy中axis引數理解

2021-08-21 16:18:40 字數 852 閱讀 8702

在學習axis時,其為0或者為1的時候,到底是行還是列。初學的時候感覺好像numpy和python中不一樣,0有的時候代表行,有的時候代表列,經常犯錯。其實是自己對其理解有誤。下面開始來講解。

numpy當中axis的值表示的是這個多維陣列維度的下標,比如有乙個二維陣列a,a的shape是(5,6),也就是說a有5行6列,axis=0表示的就是[5,6]中的第一維,也就是行,axis=1表示的是[5,6]中的第二個維度,也就是列。

簡單的來記就是axis=0代表往跨行(down),而axis=1代表跨列(across)。

axis=0是對行進行操作,axis=1是對列進行操作。

# 建立乙個矩陣a,a的維度為2行3列

>>> a = np.array([[1,2,3],[7,8,9]])

>>> print a

[[1 2 3]

[7 8 9]]

# b表示沿著axis=0(行)這條軸取max,對行進行操作,跨行操作,得到的結果就是把輸入陣列的'行'給消除了,2行變1行,若是求和,則就是[8 10 12]

>>> b = a.max(axis=0)

>>> print b

[7 8 9]

# c表示沿著axis=1(列)這條軸取max,得到的結果就是把輸入陣列的'列'給消除了,3列變1列,若是求和,則就是[6 24]

>>> c = a.max(axis=1)

>>> print c

[3 9]

擴充套件為多維;若有三個維度,則:axis=0代表對維度為0進行操作,axis=1代表對維度為1進行操作,axis=2代表對維度為2進行操作

Numpy和Pandas中axis引數理解

numpy和pandas是資料處理中常用的庫,numpy和pandas許多函式都有axis這個引數,傳入axis引數可以指定在哪個軸上操作,但是使用axis到底該指定哪個軸,這帶了很多的困惑。下面我們就來分析一下,axis是怎麼指定不同的軸的,以及指定不同的軸,是怎樣操作的。pandas保持了num...

理解numpy中的axis

對於m個元素一維陣列a,因為只有乙個軸,所以axis只能為0,和預設值效果相同,觀察的是0軸上0,1,i,m點對應的元素。產生的新集合就乙個元素。舉例 對於mxn的二維陣列 a,axis可以取值0或1。axis 0 相當於平面座標的y軸,變化的是 行 即觀察每一列不同行的元素。產生的新集合,其元素的...

Pandas的axis引數理解篇(十)

1 pandas的axis引數怎麼理解?2 axis 1或者 columns 按哪個axis,就是這個axis要動起來 類似被for遍歷 其它的axis保持不動 2 實戰演練import pandas as pd import numpy as np df pd.dataframe np.arang...