新聞中心
然后np.array()函數(shù)將其轉(zhuǎn)化成了一個(gè)包含三個(gè)元素的一位 ndarray 對(duì)象。2. 使用特殊函數(shù)創(chuàng)建除了從list或tuple轉(zhuǎn)換外。
在進(jìn)行Python數(shù)據(jù)分析時(shí),我們常常需要使用到numpy庫(kù)。而numpy中最基本也是最重要的數(shù)據(jù)結(jié)構(gòu)就是ndarray(N-dimensional array),即多維數(shù)組。通過(guò)對(duì)ndarray對(duì)象的操作,我們可以實(shí)現(xiàn)高效、快速地處理大量數(shù)值型數(shù)據(jù)。

創(chuàng)新互聯(lián)專(zhuān)注為客戶(hù)提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、紅崗網(wǎng)絡(luò)推廣、微信小程序、紅崗網(wǎng)絡(luò)營(yíng)銷(xiāo)、紅崗企業(yè)策劃、紅崗品牌公關(guān)、搜索引擎seo、人物專(zhuān)訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供紅崗建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com
那么,在使用過(guò)程中如何創(chuàng)建一個(gè)ndarray呢?下面我們將介紹幾種不同方式。
1. 從list或tuple轉(zhuǎn)換
首先,可以用list或者tuple來(lái)初始化一個(gè)一維或者二維的數(shù)組:
```python
import numpy as np
# 一維數(shù)組
a = np.array([1,2,3])
print(a)
# 二位數(shù)組
b = np.array([(1.5,2,3), (4,5,6)])
print(b)
```
輸出結(jié)果為:
[1 2 3]
[[1.5 2. 3. ]
[4. 5. 6. ]]
其中第一個(gè)例子里面?zhèn)魅肓艘粋€(gè)列表 [1,2,3] ,然后np.array()函數(shù)將其轉(zhuǎn)化成了一個(gè)包含三個(gè)元素的一位 ndarray 對(duì)象。第二個(gè)例子則傳入了兩個(gè)元組作為參數(shù),并且這些元組都有三個(gè)浮點(diǎn)數(shù)類(lèi)型數(shù)字。函數(shù)會(huì)自動(dòng)推斷出這應(yīng)該生成一個(gè) $n\times m$ 的矩陣。
此外,如果你想知道每個(gè)元素所占據(jù)空間大小(以字節(jié)為單位),可以使用itemsize屬性:
print(a.itemsize)
4
這個(gè)例子中,數(shù)組 a 中每個(gè)元素占據(jù)4字節(jié)的空間(因?yàn)槟J(rèn)情況下,numpy 會(huì)使用32位整數(shù))。
2. 使用特殊函數(shù)創(chuàng)建
除了從list或tuple轉(zhuǎn)換外,我們也可以用一些內(nèi)置的 numpy 函數(shù)來(lái)初始化一個(gè)數(shù)組。其中最常用的是 zeros() 和 ones() ,它們分別生成全零和全1矩陣:
c = np.zeros((3,4))
print(c)
d = np.ones((2,3,4),dtype=np.int16)
print(d)
[[0. 0. 0. 0.]
[0. 0. 0. 0.]
[0. 0. 0. 0.]]
[[[1,1,1],
[1,1,1],
[1,]]]
此外還有一些其他函數(shù),比如 empty() 可以創(chuàng)建一個(gè)沒(méi)有任何具體值的數(shù)組;eye() 則可以生成單位矩陣。
3、使用arange函數(shù)創(chuàng)建
如果需要按指定間隔在指定范圍內(nèi)生成序列,則可通過(guò)arange函數(shù)實(shí)現(xiàn)。其產(chǎn)生一個(gè)一維數(shù)組,并且參數(shù)必須是浮點(diǎn)數(shù)類(lèi)型。
e = np.arange(10) # 類(lèi)似于range()
print(e)
f = np.arange(10,dtype=float) # 指定數(shù)據(jù)類(lèi)型
print(f)
g = np.arange(2,10,2) # 指定起始值、終止值(不包括),以及步長(zhǎng)
print(g)
[0 1 2 3 4 5 6 7 8 9]
[0.00e+000 nan nan ... nan nan -inf]
[2,4,6,8]
需要注意的是,由于浮點(diǎn)數(shù)精度有限,arange() 函數(shù)可能無(wú)法預(yù)測(cè)生成的元素個(gè)數(shù)。因此在這種情況下最好使用 linspace() 函數(shù)。
總結(jié)
本文介紹了 numpy 中nd數(shù)組的創(chuàng)建方法,包括從list或tuple轉(zhuǎn)換、使用特殊函數(shù)創(chuàng)建和使用arange函數(shù)創(chuàng)建等。對(duì)于初學(xué)者來(lái)說(shuō),掌握這些基礎(chǔ)知識(shí)是進(jìn)行Python數(shù)據(jù)分析中非常重要的一步。
同時(shí),在實(shí)際應(yīng)用過(guò)程中還可以通過(guò)reshape()函數(shù)改變數(shù)組形狀、利用切片操作獲取指定部分?jǐn)?shù)組等進(jìn)一步擴(kuò)展功能。希望大家能夠通過(guò)學(xué)習(xí)更多numpy相關(guān)知識(shí),提升自己在數(shù)據(jù)處理方面的能力!
名稱(chēng)欄目:Python數(shù)據(jù)分析(3)-numpy中nd數(shù)組的創(chuàng)建
轉(zhuǎn)載源于:http://m.fisionsoft.com.cn/article/cdheoeh.html


咨詢(xún)
建站咨詢(xún)
