校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > python基礎之Numpy庫中array用法總結

python基礎之Numpy庫中array用法總結

熱門標簽:長沙高頻外呼系統原理是什么 ai電話機器人哪里好 湛江智能外呼系統廠家 地圖標注審核表 百度地圖標注沒有了 ai電銷機器人源碼 西藏房產智能外呼系統要多少錢 外呼并發線路 宿遷星美防封電銷卡

前言

Numpy是Python的一個科學計算的庫,提供了矩陣運算的功能,其一般與Scipy、matplotlib一起使用。其實,list已經提供了類似于矩陣的表示形式,不過numpy為我們提供了更多的函數。

NumPy數組是一個多維數組對象,稱為ndarray。數組的下標從0開始,同一個NumPy數組中所有元素的類型必須是相同的。

>>> import numpy as np

為什么要用numpy

Python中提供了list容器,可以當作數組使用。但列表中的元素可以是任何對象,因此列表中保存的是對象的指針,這樣一來,為了保存一個簡單的列表[1,2,3]。就需要三個指針和三個整數對象。對于數值運算來說,這種結構顯然不夠高效。

Python雖然也提供了array模塊,但其只支持一維數組,不支持多維數組(在TensorFlow里面偏向于矩陣理解),也沒有各種運算函數。因而不適合數值運算。

NumPy的出現彌補了這些不足。

數組的創建

使用numpy.array方法將tuple和list, array, 或者其他的序列模式的數據轉創建為 ndarray, 默認創建一個新的 ndarray.

>>> np.array([1,2,3,4]) 
[1 2 3 4]

>>> b = array( [ (1.5,2,3), 
                 (4,5,6)  ]  )   
array([[ 1.5,  2. ,  3. ],  
     [ 4. ,  5. ,  6. ]])  

>>> c = array( [ [1,2], [3,4] ], dtype=complex)  
#指定數組中元素的類型
>>> c  
    array([[ 1.+0.j,  2.+0.j],  
       [ 3.+0.j,  4.+0.j]]) 

生成均勻分布的array:

arange(最小值,最大值,步長)(左閉右開) : 創建等差數列

linspace(最小值,最大值,元素數量)

logspace(開始值, 終值, 元素個數): 創建等比數列

>>> np.arange(15)
[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14]

>>> np.arange(15).reshape(3,5)
[[ 0  1  2  3  4]
 [ 5  6  7  8  9]
 [10 11 12 13 14]]

>>> np.arange( 0, 2, 0.3 )        
array([ 0. ,  0.3,  0.6,  0.9,  1.2,  1.5,  1.8])

>>> np.linspace(1,3,9)
[ 1.    1.25  1.5   1.75  2.    2.25  2.5   2.75  3.  ]

生成特殊數組

np.ones: 創建一個數組, 其中的元素全為 1

np.zeros: 創建元素全為 0 的數組, 類似 np.ones

np.empty創建一個內容隨機并且依賴與內存狀態的數組。

np.eye: 創建一個對角線為 1 其他為 0 的矩陣.

np.identity: 創建一個主對角線為 1 其他為 0 的方陣.

>>> np.zeros((3,4))
[[ 0.  0.  0.  0.]
 [ 0.  0.  0.  0.]
 [ 0.  0.  0.  0.]]

>>> np.ones((3,4))
[[ 1.  1.  1.  1.]
 [ 1.  1.  1.  1.]
 [ 1.  1.  1.  1.]]

>>> np.eye(3)
[[ 1.  0.  0.]
 [ 0.  1.  0.]
 [ 0.  0.  1.]]

獲取數組的屬性

>>> a = np.zeros((2,2,2))
>>> a.ndim   #數組的維數
3
>>> a.shape  #數組每一維的大小
(2, 2, 2)
>>> a.size   #數組全部元素的數量 
8
>>> a.dtype  #數組中元素的類型
float64
>>> print a.itemsize  #每個元素所占的字節數
8

數組索引,切片,賦值

‘…'符號表示將所有未指定索引的維度均賦為 ‘:'

‘:'在python中表示該維所有元素

>>> a = np.array( [[2,3,4],[5,6,7]] )
>>> a
[[2 3 4]
 [5 6 7]]
>>> a[1,2]
7
>>> a[1,:]
[5 6 7]
>>> print a[1,1:2]
[6]
>>> a[1,:] = [8,9,10]
>>> a
[[ 2  3  4]
 [ 8  9 10]]
>>> c[1,...]                                   # same as c[1,:,:] or c[1]
array([[100, 101, 102],
       [110, 112, 113]])
>>> c[...,2]                                   # same as c[:,:,2]
array([[  2,  13],
       [102, 113]])
>>> def f(x,y):
...     return 10*x+y
...
>>> b = np.fromfunction(f,(5,4),dtype=int)    #
>>> b
array([[ 0,  1,  2,  3],
       [10, 11, 12, 13],
       [20, 21, 22, 23],
       [30, 31, 32, 33],
       [40, 41, 42, 43]]) 

數組操作

>>> a = np.ones((2,2))
>>> b = np.eye(2)
>>> print a
[[ 1.  1.]
 [ 1.  1.]]
>>> print b
[[ 1.  0.]
 [ 0.  1.]]
>>> print a > 2
[[False False]
 [False False]]
>>> print a+b             #數組加,對應位置相加
[[ 2.  1.]
 [ 1.  2.]]
>>> print a-b             #數組減,對應位置相減
[[ 0.  1.]
 [ 1.  0.]]
>>> print b*2             #數組與數值相乘,對應位置乘
[[ 2.  0.]
 [ 0.  2.]]
>>> print (a*2)*(b*2)     #數組與數組相乘,按位置一對一相乘
[[ 4.  0.]
 [ 0.  4.]]
>>> print b/(a*2)          #數組與數組相除,按位置一對一相除
[[ 0.5  0. ]
 [ 0.   0.5]]
>>> print a.dot(b)                    # matrix product,矩陣乘
>>> np.dot(a,a)                       #矩陣乘法
array([[ 2.,  2.],
       [ 2.,  2.]])
>>> print (a*2)**4
[[ 16.  16.]
 [ 16.  16.]]
>>> b = a              #淺拷貝
>>> b is a
True
>>> c = a.copy()       #深拷貝
>>> c is a
False

內置函數(min,max,sum),同時可以使用axis指定對哪一維進行操作:

 >>> a.sum()
4.0
>>> a.sum(axis=0)    #計算每一列(二維數組中類似于矩陣的列)的和
array([ 2.,  2.])
>>> a.min()          #數組最小值
1.0
>>> a.max()          #數組最大值
1.0

使用numpy下的方法:

>>> np.sin(a)
array([[ 0.84147098,  0.84147098],
       [ 0.84147098,  0.84147098]])
>>> np.max(a)
1.0
>>> np.floor(a)  
array([[ 1.,  1.],
       [ 1.,  1.]])
>>> np.exp(a)               #e^x
array([[ 2.71828183,  2.71828183],
       [ 2.71828183,  2.71828183]])
>>> print np.vstack((a,b))   #合并數組
[[ 1.  1.] 
 [ 1.  1.]
 [ 1.  0.]
 [ 0.  1.]]
>>> print np.hstack((a,b))   #合并數組
[[ 1.  1.  1.  0.]
 [ 1.  1.  0.  1.]]
>>> print a.transpose()       #轉置

numpy.linalg模塊中有很多關于矩陣運算的方法:

>>> import numpy.linalg as nplg

NumPy中的基本數據類型

名稱 描述
bool 用一個字節存儲的布爾類型(True或False)
inti 由所在平臺決定其大小的整數(一般為int32或int64)
int8/16/32/64 整數,1/2/4/8個字節大小
uint8/16/32/64 無符號整數
float16/32/64 半/單/雙精度浮點數,16/32/64位,指數、精度也不同
complex64/128 復數,分別用兩個32/64位浮點數表示實部和虛部

輸出數組

當輸出一個數組時,NumPy以特定的布局用類似嵌套列表的形式顯示:

  • 第一行從左到右輸出
  • 每個切片通過一個空行與下一個隔開
  • 一維數組被打印成行,二維數組成矩陣,三維數組成矩陣列表。
  • 如果一個數組太長,則NumPy自動省略中間部分而只打印兩端的數據: 
>>> a = arange(6)                         # 1d array  
>>> print a  
    [0 1 2 3 4 5]  
     
>>> b = arange(12).reshape(4,3)           # 2d array  
>>> print b  
    [[ 0  1  2]  
    [ 3  4  5]  
    [ 6  7  8]  
    [ 9 10 11]]     
>>> c = arange(24).reshape(2,3,4)         # 3d array  
>>> print c  
    [[[ 0  1  2  3]  
    [ 4  5  6  7]  
    [ 8  9 10 11]]  
     
    [[12 13 14 15]  
    [16 17 18 19]  
    [20 21 22 23]]]  

總結

到此這篇關于python基礎之Numpy庫中array用法的文章就介紹到這了,更多相關python Numpy中array用法內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python中找出numpy array數組的最值及其索引方法
  • Python中的二維數組實例(list與numpy.array)
  • 基于Python Numpy的數組array和矩陣matrix詳解
  • python中利用numpy.array()實現倆個數值列表的對應相加方法
  • 對python numpy.array插入一行或一列的方法詳解
  • Python中Numpy ndarray的使用詳解
  • python實現list由于numpy array的轉換
  • Python numpy.array()生成相同元素數組的示例
  • Python 實現Numpy中找出array中最大值所對應的行和列
  • Python 獲取numpy.array索引值的實例

標簽:大同 寧夏 南平 漯河 林芝 盤錦 普洱 海南

巨人網絡通訊聲明:本文標題《python基礎之Numpy庫中array用法總結》,本文關鍵詞  python,基礎,之,Numpy,庫中,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python基礎之Numpy庫中array用法總結》相關的同類信息!
  • 本頁收集關于python基礎之Numpy庫中array用法總結的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    av一区二区三区在线| 日韩欧美在线123| 久久99热狠狠色一区二区| 国产精品国产三级国产a| 日韩精品自拍偷拍| 欧美疯狂做受xxxx富婆| 色av成人天堂桃色av| 国产成人啪免费观看软件| 麻豆91在线播放免费| 日韩成人午夜精品| 欧美精彩视频一区二区三区| 日韩精品一区二区三区视频在线观看 | 久久伊人蜜桃av一区二区| 欧美日韩国产天堂| 色婷婷综合久久久| 色噜噜夜夜夜综合网| 91视频在线看| 欧美日韩成人高清| 成人欧美一区二区三区视频网页| 久久午夜电影网| 欧美精品一区二区三区四区| 日韩一区二区精品| 精品久久久网站| 欧美一区二区三区免费观看视频 | 91福利国产精品| 在线观看免费一区| 国产成人免费在线| 不卡的av电影| 欧美日韩中文另类| 久久久美女毛片| 亚洲一区在线观看视频| 日韩av在线免费观看不卡| 国产一区二区精品久久| 91麻豆福利精品推荐| 欧美人与禽zozo性伦| 精品女同一区二区| 一区二区三区中文在线| 久久99精品国产91久久来源| av成人免费在线观看| 91精品麻豆日日躁夜夜躁| 久久久久九九视频| 一区二区三区精品| 高清不卡在线观看| 91.麻豆视频| 亚洲欧美一区二区三区孕妇| 激情图片小说一区| 欧美理论在线播放| 亚洲激情av在线| 国产盗摄女厕一区二区三区| 欧美三级电影精品| 中文字幕一区免费在线观看| 蜜臀久久99精品久久久画质超高清| 成人小视频免费在线观看| 日韩欧美的一区二区| 一二三区精品福利视频| 成人一级黄色片| 久久久www免费人成精品| 午夜影院在线观看欧美| 91影视在线播放| 国产精品美日韩| 国产成人午夜视频| 久久理论电影网| 久久99这里只有精品| 91精品欧美久久久久久动漫 | 91精品国产美女浴室洗澡无遮挡| 中文字幕日韩一区二区| 国产伦精品一区二区三区在线观看| 欧美理论在线播放| 日韩成人午夜精品| 欧美一区二区高清| 三级久久三级久久| 69堂亚洲精品首页| 午夜久久福利影院| 91精品国产欧美一区二区成人| 亚洲一区视频在线| 欧美人妖巨大在线| 琪琪一区二区三区| 欧美不卡在线视频| 国产一区二区三区高清播放| 久久美女艺术照精彩视频福利播放 | 美女精品一区二区| 日韩欧美一级二级三级久久久| 天堂av在线一区| 日韩一二三四区| 久久成人久久鬼色| 久久色在线视频| 成人黄页在线观看| 一区二区三区资源| 欧美揉bbbbb揉bbbbb| 青青草一区二区三区| 精品粉嫩超白一线天av| 国产成人8x视频一区二区| 中文字幕亚洲区| 欧美三级乱人伦电影| 理论电影国产精品| 国产精品国产馆在线真实露脸| 日本久久一区二区三区| 免费日韩伦理电影| 国产精品久久毛片a| 日本道在线观看一区二区| 日韩和欧美一区二区| 国产日韩三级在线| 91传媒视频在线播放| 蜜桃av一区二区| 亚洲欧美另类小说视频| 91精品欧美综合在线观看最新| 国产99一区视频免费| 亚洲成人福利片| 久久久久免费观看| 欧美系列一区二区| 国产精品一二三四五| 亚洲国产一区在线观看| 久久精品人人做人人综合 | 全国精品久久少妇| 亚洲免费伊人电影| 久久这里只有精品首页| 99国产精品久| 国产高清久久久| 日韩成人伦理电影在线观看| 国产精品成人一区二区三区夜夜夜| 在线成人av影院| www.亚洲精品| 国精品**一区二区三区在线蜜桃| 中文字幕在线不卡| 日韩欧美国产高清| 欧美日韩国产欧美日美国产精品| 成人免费视频一区二区| 久久精品国产精品亚洲红杏| 亚洲影视资源网| 中文字幕制服丝袜一区二区三区 | 中文字幕一区二区5566日韩| 欧美www视频| 欧美日韩国产精选| 99国产精品国产精品毛片| 国产一区二区三区美女| 午夜精品aaa| 一卡二卡三卡日韩欧美| 国产精品网站在线播放| 久久亚洲精华国产精华液| 91精品国产综合久久精品| 欧美最新大片在线看| 成人av影院在线| 高潮精品一区videoshd| 国产一区 二区 三区一级| 日本成人中文字幕| 蜜臀久久99精品久久久画质超高清 | 国产精品三级电影| 欧美国产亚洲另类动漫| 久久伊人蜜桃av一区二区| 久久影院午夜论| 精品国产91九色蝌蚪| 久久久久久久久久美女| 精品国产不卡一区二区三区| 日韩免费一区二区| 精品国产一区久久| 精品国产三级电影在线观看| 欧美成人一区二区三区| 日韩三级免费观看| 久久综合丝袜日本网| 久久久久国产一区二区三区四区| 久久亚区不卡日本| 久久久高清一区二区三区| 国产精品久久久久久久久免费桃花| 日本一二三不卡| 伊人夜夜躁av伊人久久| 天天免费综合色| 美女性感视频久久| 国产精品一区在线| 91麻豆精东视频| 欧美日本不卡视频| 精品国产免费久久| 国产精品另类一区| 天天综合色天天综合色h| 理论电影国产精品| 99久久久久免费精品国产| 色美美综合视频| 日韩欧美亚洲另类制服综合在线| 久久丝袜美腿综合| 一区二区高清在线| 捆绑变态av一区二区三区| 成人动漫一区二区| 911精品产国品一二三产区| 久久精品人人做人人综合| 亚洲亚洲精品在线观看| 国产美女一区二区| 色婷婷久久久综合中文字幕| 欧美一区二区三区不卡| 国产精品对白交换视频 | 91网页版在线| 欧美成人精品3d动漫h| 亚洲蜜桃精久久久久久久| 男人的j进女人的j一区| 91香蕉视频在线| 欧美精品一区二区三区久久久| 1024成人网色www| 国产一区91精品张津瑜| 欧美区一区二区三区| 国产精品精品国产色婷婷| 久久se这里有精品| 欧美高清视频一二三区 |