日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

numpy创建三维空数组_numpy数组的创建和属性转换

發(fā)布時(shí)間:2024/8/23 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 numpy创建三维空数组_numpy数组的创建和属性转换 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、數(shù)據(jù)與numpy數(shù)組的創(chuàng)建

1、 python數(shù)組的創(chuàng)建

python中的固定類型數(shù)組:

python中提供了幾種將數(shù)組存儲(chǔ)在有效的、固定類型的數(shù)據(jù)緩存中的選項(xiàng)。內(nèi)置的數(shù)組(array)模塊可以創(chuàng)建按統(tǒng)一類型的密集數(shù)組:

這里的“i”表示的是一個(gè)數(shù)據(jù)類型碼,表示數(shù)據(jù)為整型。

更實(shí)用的是ndarray數(shù)組對(duì)象,Python的數(shù)組對(duì)象提供了數(shù)組類型的有效存儲(chǔ),而Numpy為該數(shù)據(jù)加上了高效的操作。稍后將會(huì)介紹這些操作,這里先集中展示創(chuàng)建Numpy數(shù)組的方法:

2、 Numpy數(shù)組的創(chuàng)建

從python列表創(chuàng)建數(shù)組:

  • 創(chuàng)建整數(shù)型

  • 指定類型創(chuàng)建數(shù)組

  • 根據(jù)內(nèi)容,自動(dòng)創(chuàng)建對(duì)應(yīng)數(shù)據(jù)類型

創(chuàng)建np數(shù)組時(shí)需要強(qiáng)調(diào)元素類型的一致。如果類型不同則會(huì)自動(dòng)向上轉(zhuǎn)換。

2.1dtype參數(shù)進(jìn)行強(qiáng)制類型轉(zhuǎn)換或類型指定

2.2生成嵌套數(shù)組

手動(dòng)創(chuàng)建嵌套數(shù)組

使用公式嵌套數(shù)組

3、11中創(chuàng)建ndarray數(shù)組的高效創(chuàng)建方法

面對(duì)大型數(shù)組,用Numpy數(shù)組時(shí),用Numpy內(nèi)置方法從頭創(chuàng)建數(shù)組時(shí)一種高效的方法,以下是幾個(gè)示例:

3.1 創(chuàng)建一個(gè)元素都為0 的n * m 的多(2)維數(shù)組

np.zeros((維度,行數(shù),列數(shù)),dtype = "指定類型(float32/int32/str)")

  • 創(chuàng)建一個(gè)10列元素類型為浮點(diǎn)型的數(shù)組,在僅指定一個(gè)參數(shù)時(shí),創(chuàng)建的表示一行,指定列數(shù),默認(rèn)為浮點(diǎn)型。

  • 創(chuàng)建一個(gè)3行4列元素類型為整數(shù)型的數(shù)組, 僅指定兩個(gè)參數(shù)時(shí),表示的是行數(shù)和列數(shù)。

  • 創(chuàng)建一個(gè)2維3行4列元素類型為整數(shù)型的數(shù)組, 指定三個(gè)參數(shù)時(shí),表示的是維度,行數(shù)和列數(shù)。

3.2 創(chuàng)建一個(gè)元素都為1的n*m的多(3)維數(shù)組

np.ones((維度,行數(shù),列數(shù)),dtype = "指定類型(float32/int32/str)")

  • 傳維度參數(shù)的時(shí)候,放在一個(gè)容器中,可以是元組,也可以是列表

3.3創(chuàng)建一個(gè)的整數(shù)型數(shù)組,數(shù)組的值是一個(gè)線性序列。

np.arange(start[真包含], end[假包含], step)

  • 創(chuàng)建一個(gè)從0開始30結(jié)束,步長(zhǎng)為3的數(shù)組

  • 創(chuàng)建一個(gè)從1開始30結(jié)束的數(shù)組

  • 創(chuàng)建一個(gè)長(zhǎng)度到10結(jié)束的數(shù)組

3.4創(chuàng)建一個(gè)50個(gè)元素的數(shù)組,這50個(gè)數(shù)均勻地分配到1~10

np.linspace(start, stop, 平均分成的分?jǐn)?shù))

3.5 創(chuàng)建一個(gè)在0-1之間隨機(jī)分布的由隨機(jī)數(shù)組成的數(shù)組

np.random.random((維度,行數(shù), 列數(shù)))

  • 創(chuàng)建一個(gè)3列的隨機(jī)數(shù)數(shù)組

  • 創(chuàng)建一個(gè)3行3列的隨機(jī)數(shù)數(shù)組

  • 創(chuàng)建一個(gè)3維3行3列的數(shù)組

其他生成隨機(jī)數(shù)的方法

  • 創(chuàng)建一個(gè)服從標(biāo)準(zhǔn)正態(tài)分布的數(shù)組

np.random.randn(維度,行數(shù),列數(shù))

  • 創(chuàng)建均勻分布[0,1)上的數(shù)組

np.random.rand(維度,行數(shù),列數(shù))

3.6 創(chuàng)建一個(gè)正態(tài)分布的隨機(jī)數(shù)數(shù)組

np.random.normal(均值, 方差, (維度,行數(shù), 列數(shù)))

  • 創(chuàng)建一個(gè)均值為0,方差為1,3維3行3列的隨機(jī)數(shù)數(shù)組

3.7創(chuàng)建一個(gè)服從設(shè)置區(qū)間的隨機(jī)數(shù)整數(shù)型的數(shù)組

np.random.randint(start, stop, (維度,行數(shù), 列數(shù)))

  • 創(chuàng)建從0開始10結(jié)束,3維3行3列的整數(shù)型數(shù)組

3.8 創(chuàng)建一個(gè)對(duì)角線元素都為1,其他位置元素都為0的單位矩陣

np.eye(行數(shù),列數(shù),dype=’元素類型(默認(rèn)為浮點(diǎn)型)’)

  • 創(chuàng)建一個(gè)4列的單位矩陣,如果僅指定一個(gè)參數(shù),默認(rèn)為列數(shù),行數(shù)會(huì)默認(rèn)為是列數(shù)。

  • 創(chuàng)建一個(gè)4行3列的單位矩陣

3.9創(chuàng)建一個(gè)由m*n維未初始化的數(shù)組,數(shù)組的值是內(nèi)存空間中的任意值

np.empty(n)

3.10 創(chuàng)建一個(gè)指定元素的對(duì)角矩陣

Np.diag(n)

  • 創(chuàng)建對(duì)角元素為1,2,3,4的對(duì)角矩陣

3.11創(chuàng)建一個(gè)指定行列,和指定內(nèi)容的數(shù)組

Np.full((維度,行數(shù),列數(shù)),指定值(可以是一個(gè)數(shù)組,也可以是一個(gè)列表或嵌套列表))

  • 創(chuàng)建一個(gè)3維3行5列,值全部為3.14的數(shù)組

二、數(shù)組的基本操作

1、查看Nddaray屬性

數(shù)組的屬性:

  • 數(shù)組的維度:ndim
  • 數(shù)組每個(gè)維度的大小:shape
  • 數(shù)組的總大小(元素的總個(gè)數(shù)):size
  • 數(shù)組類型:dtype
  • 數(shù)組元素字節(jié)大小:itemsize;nbytes

現(xiàn)在我們定義三個(gè)數(shù)組, 一維數(shù)組, 二維數(shù)組, 三維數(shù)組,為了確保大家都能生成一樣的數(shù)組, 我們先設(shè)置隨機(jī)數(shù)種子。

Np.random.seed可以使生成隨機(jī)數(shù)時(shí)可以生成一樣的隨機(jī)數(shù)

1.1查看數(shù)組的形狀

1.2查看數(shù)組的維度

1.3 查看數(shù)組的總大小

1.4查看數(shù)組的數(shù)據(jù)類型

1.5查看數(shù)組中每個(gè)元素的大小(所占用內(nèi)存的大小)

1.6查看數(shù)組的總大小(占用內(nèi)存的大小)

1.7對(duì)數(shù)組進(jìn)行轉(zhuǎn)置

1.8其他查看屬性的方法

Ndarray.flags

有關(guān)數(shù)組的內(nèi)存布局的信息。

Ndarray.shape

數(shù)組維數(shù)組。

Ndarray.ndim

數(shù)組維數(shù),在Python世界中,維度的數(shù)量被稱為rank。

Ndarray.data

Python緩沖區(qū)對(duì)象指向數(shù)組的數(shù)據(jù)的開始。

Ndarray.size

數(shù)組中的元素總個(gè)數(shù)。

Ndarray.itemsize

一個(gè)數(shù)組元素的長(zhǎng)度(以字節(jié)為單位)。

Ndarray.dtype

數(shù)組元素的數(shù)據(jù)類型。

Ndarray.T

數(shù)組的轉(zhuǎn)置。

2.Numpy數(shù)據(jù)類型以及類型轉(zhuǎn)換

Numpy中的數(shù)組比 Python 原生中的數(shù)組(只支持整數(shù)類型與浮點(diǎn)類型)強(qiáng)大的一點(diǎn)就是它支持更多的數(shù)據(jù)類型。

2.1 numpy基本數(shù)據(jù)類型

Numpy常見的基本數(shù)據(jù)類型如下:

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

描述

bool_

布爾(True或False),存儲(chǔ)為一個(gè)字節(jié)

int_

默認(rèn)整數(shù)類型(與C long相同;通常為int64或int32)

intc

與C int(通常為int32或int64)相同

intp

用于索引的整數(shù)(與C ssize_t相同;通常為int32或int64)

int8

字節(jié)(-128到127)

int16

整數(shù)(-32768到32767)

int32

整數(shù)(-2147483648至2147483647)

int64

整數(shù)(-9223372036854775808至9223372036854775807)

uint8

無符號(hào)整數(shù)(0到255)

uint16

無符號(hào)整數(shù)(0到65535)

uint32

無符號(hào)整數(shù)(0至4294967295)

uint64

無符號(hào)整數(shù)(0至18446744073709551615)

float_

float64的簡(jiǎn)寫。

float16

半精度浮點(diǎn):符號(hào)位,5位指數(shù),10位尾數(shù)

float32

單精度浮點(diǎn):符號(hào)位,8位指數(shù),23位尾數(shù)

float64

雙精度浮點(diǎn):符號(hào)位,11位指數(shù),52位尾數(shù)

complex_

complex128的簡(jiǎn)寫。

complex64

復(fù)數(shù),由兩個(gè)32位浮點(diǎn)(實(shí)數(shù)和虛數(shù)分量)

complex128

復(fù)數(shù),由兩個(gè)64位浮點(diǎn)(實(shí)數(shù)和虛數(shù)分量)

雖然有這么多的數(shù)據(jù)類型,但是我們平時(shí)用的時(shí)候僅需要知道(int,bool,float,complex,str)這幾種就可以了,暫時(shí)不需要去記這么多。

這些類型都可以在創(chuàng)建ndarray的時(shí)候通過dtype來制定

2.2數(shù)據(jù)類型的轉(zhuǎn)換

數(shù)組直接數(shù)據(jù)類型的轉(zhuǎn)換首選是.astype()方法,或者使用類型本身作為函數(shù)。

總結(jié)

以上是生活随笔為你收集整理的numpy创建三维空数组_numpy数组的创建和属性转换的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。