Python數(shù)據(jù)分析之Numpy庫的使用詳解_第1頁
Python數(shù)據(jù)分析之Numpy庫的使用詳解_第2頁
Python數(shù)據(jù)分析之Numpy庫的使用詳解_第3頁
Python數(shù)據(jù)分析之Numpy庫的使用詳解_第4頁
Python數(shù)據(jù)分析之Numpy庫的使用詳解_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

第Python數(shù)據(jù)分析之Numpy庫的使用詳解由于自己并不以Python語言為主,這里只是簡單介紹一下Numpy庫的使用

提示:以下是本篇文章正文內(nèi)容

Numpy庫介紹

numpy庫處理的最基礎數(shù)據(jù)類型是由同種元素構(gòu)成的多維數(shù)組(ndarray),簡稱數(shù)組,數(shù)組中所有元素的類型必須相同,數(shù)組中元素可以用整數(shù)索引,序號從0開始。ndarray類型的維度(dimensions)叫做軸(axes),軸的個數(shù)叫做秩(rank)。一維數(shù)組的秩為1,二維數(shù)組的秩為2,二維數(shù)組相當于由兩個一維數(shù)組構(gòu)成

numpy庫概述:

由于numpy庫中函數(shù)較多且命名容易與常用命名混淆,建議采用如下方式引用numpy庫:

importnumpyasnp

其中,as保留字與import一起使用能夠改變后續(xù)代碼中庫的命名空間,有助于提高代碼可讀性。簡單說,在程序的后續(xù)部分中,np代替numpy。

ndarray類常用屬性

創(chuàng)建一個簡單的數(shù)組后,可以查看ndarray類型有一些基本屬性

1.ndarray.ndim

數(shù)組軸的個數(shù),在python的世界中,軸的個數(shù)被稱作秩

2.ndarray.shape

數(shù)組的維度。這是一個指示數(shù)組在每個維度上大小的整數(shù)元組。例如一個n排m列的矩陣,它的shape屬性將是(2,3),這個元組的長度顯然是秩,即維度或者ndim屬性

3.ndarray.size

數(shù)組元素的總個數(shù),等于shape屬性中元組元素的乘積。

4.ndarray.dtype

一個用來描述數(shù)組中元素類型的對象,可以通過創(chuàng)造或指定dtype使用標準Python類型。另外NumPy提供它自己的數(shù)據(jù)類型。

5.ndarray.itemsize

數(shù)組中每個元素的字節(jié)大小。例如,一個元素類型為float64的數(shù)組itemsiz屬性值為8(=64/8),又如,一個元素類型為complex32的數(shù)組item屬性為4(=32/8).

6.ndarray.data

包含實際數(shù)組元素的緩沖區(qū),通常我們不需要使用這個屬性,因為我們總是通過索引來使用數(shù)組中的元素。

importnumpyasnp#引入numpy模塊

a=np.ones((4,5))

print(a)

print(數(shù)據(jù)軸個數(shù):,a.ndim)

print(每個維度的數(shù)據(jù)個數(shù):,a.shape)

print(數(shù)據(jù)類型,a.dtype)

[[1.1.1.1.1.]

[1.1.1.1.1.]

[1.1.1.1.1.]

[1.1.1.1.1.]]

數(shù)據(jù)軸個數(shù):2

每個維度的數(shù)據(jù)個數(shù):(4,5)

數(shù)據(jù)類型float64

小結(jié):

Numpy常用函數(shù)

array函數(shù)

函數(shù)原型:

np.array([x,y,x],dtype=int)#從列表和元組中創(chuàng)建數(shù)組

功能:array函數(shù)將列表轉(zhuǎn)矩陣

importnumpyasnp#引入numpy模塊

array=np.array([[1,2,3],#列表轉(zhuǎn)矩陣

[4,5,6]])

print(array)

print(numberofdim,array.ndim)#輸出矩陣數(shù)據(jù)軸數(shù)

print(size,array.size)#輸出矩陣總元素個數(shù)

[[123]

[456]]

numberofdim2

size6

arange()函數(shù)和linspace()函數(shù)

函數(shù)原型:

np.arange(x,y,i)#創(chuàng)建一個由x到y(tǒng),以i為步長的數(shù)組

np.linspace(x,y,n)#創(chuàng)建一個由x到y(tǒng),等分為n個元素的數(shù)組

importnumpyasnp#引入numpy模塊

a=np.arange(1,12,2)#np.arange從1到12,間隔為2

print(a)

#從2到12,生成隨機6個數(shù),并控制為2行3列

b=np.linspace(2,12,6).reshape(2,3)

print(b)

[1357911]

[[2.4.6.]

[8.10.12.]]

zeros(),empty和ones()

功能:創(chuàng)建都是初始值相同元素(0,1)的數(shù)組

函數(shù)原型:

np.ones((m,n),dtype)#創(chuàng)建一個m行n列的全為1的數(shù)組

np.zeros((m,n),dtype)#創(chuàng)建一個m行n列的全為0的數(shù)組

np.empty((m,n),dtype)#創(chuàng)建一個m行n列的全為0的數(shù)組

importnumpyasnp#引入numpy模塊

a=np.zeros((5,8))#元素都是0

b=np.ones((5,6))#元素都是1

print(a)

print(b)

[[0.0.0.0.0.0.0.0.]

[0.0.0.0.0.0.0.0.]

[0.0.0.0.0.0.0.0.]

[0.0.0.0.0.0.0.0.]

[0.0.0.0.0.0.0.0.]]

[[1.1.1.1.1.1.]

[1.1.1.1.1.1.]

[1.1.1.1.1.1.]

[1.1.1.1.1.1.]

[1.1.1.1.1.1.]]

ndarray類的索引和切片方法

和列表的索引差不多的

importnumpyasnp#引入numpy模塊

a=np.random.rand(5,3)#生成隨機5行3列數(shù)組

print(a)

print(獲取第2行,a[2])#獲取第2行

print(切片,a[1:3])#切片,1到3行,不包括3

print(切片,a[-5:-2:2])#切片,從后向前,步長為2

[[0.534690470.475591290.65865181]

[0.899423990.666831140.55181635]

[0.119898170.060559330.56880058]

[0.957444990.948141630.2155053]

[0.951792420.615446640.40876683]]

獲取第2行[0.119898170.060559330.56880058]

切片[[0.899423990.666831140.55181635]

[0.119898170.060559330.56880058]]

切片[[0.534690470.475591290.65865181]

[0.119898170.06055

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論