NumPy數(shù)組創(chuàng)建方法與索引訪問詳解
NumPy 創(chuàng)建數(shù)組
NumPy 中的核心數(shù)據(jù)結(jié)構(gòu)是 ndarray,它代表多維數(shù)組。NumPy 提供了多種方法來創(chuàng)建 ndarray 對象,包括:
使用 array() 函數(shù)
array() 函數(shù)是最常用的方法之一,它可以將 Python 列表、元組甚至其他數(shù)組轉(zhuǎn)換為 ndarray 對象。
語法:
ndarray = np.array(data, dtype=dtype, order=order)
參數(shù)說明:
data:可以是 Python 列表、元組或其他數(shù)組。 dtype:指定數(shù)組元素的數(shù)據(jù)類型,默認(rèn)為 float64。 order:指定數(shù)組元素的內(nèi)存存儲順序,默認(rèn)為 C 順序(行優(yōu)先)。
示例:
import numpy as np # 創(chuàng)建一維數(shù)組 arr1 = np.array([1, 2, 3, 4, 5]) # 創(chuàng)建二維數(shù)組 arr2 = np.array([[1, 2, 3], [4, 5, 6]]) # 創(chuàng)建三維數(shù)組 arr3 = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]) print(arr1) print(arr2) print(arr3)
輸出:
[1 2 3 4 5]
[[1 2 3]
[4 5 6]]
[[[ 1 2 3]
[ 4 5 6]]
[[ 7 8 9]
[10 11 12]]]
使用zeros()和ones()函數(shù)
zeros() 和 ones() 函數(shù)可以創(chuàng)建指定形狀和數(shù)據(jù)類型的全零或全一數(shù)組。
語法:
ndarray = np.zeros(shape, dtype=dtype) ndarray = np.ones(shape, dtype=dtype)
參數(shù)說明:
shape:指定數(shù)組的形狀,可以是元組或列表。 dtype:指定數(shù)組元素的數(shù)據(jù)類型,默認(rèn)為 float64。
示例:
import numpy as np # 創(chuàng)建一個 3x4 的全零數(shù)組 arr1 = np.zeros((3, 4)) # 創(chuàng)建一個 2x3 的全一數(shù)組 arr2 = np.ones((2, 3)) print(arr1) print(arr2)
輸出:
[[0. 0. 0. 0.]
[0. 0. 0. 0.]
[0. 0. 0. 0.]]
[[1. 1. 1.]
[1. 1. 1.]]
使用empty()函數(shù)
empty() 函數(shù)可以創(chuàng)建指定形狀的空數(shù)組,但數(shù)組元素的值未定義。
語法:
ndarray = np.empty(shape, dtype=dtype)
參數(shù)說明:
shape:指定數(shù)組的形狀,可以是元組或列表。 dtype:指定數(shù)組元素的數(shù)據(jù)類型,默認(rèn)為 float64。
示例:
import numpy as np # 創(chuàng)建一個 3x4 的空數(shù)組 arr = np.empty((3, 4)) print(arr)
輸出:
[[nan nan nan nan]
[nan nan nan nan]
[nan nan nan nan]]
使用特殊函數(shù)
NumPy 還提供了一些特殊函數(shù)來創(chuàng)建特定類型的數(shù)組,例如:
arange():創(chuàng)建等差數(shù)列數(shù)組。 linspace():創(chuàng)建線性間隔的數(shù)組。 eye():創(chuàng)建單位矩陣。 diag():創(chuàng)建對角矩陣。
請參考 NumPy 文檔了解有關(guān)這些函數(shù)的更多信息。
練習(xí)
創(chuàng)建以下數(shù)組:
一個包含 10 個元素的遞增整數(shù)數(shù)組(從 0 到 9)。 一個包含 20 個元素的隨機(jī)浮點(diǎn)數(shù)數(shù)組(范圍為 0 到 1)。 一個 3x3 的單位矩陣。
請?jiān)谠u論中分享您的答案。
Sure, here is the requested Markdown formatted content:
NumPy 數(shù)組索引
NumPy 數(shù)組可用于表示多維數(shù)據(jù)。訪問數(shù)組元素是 NumPy 中常見操作之一。
訪問一維數(shù)組元素
NumPy 數(shù)組中的索引從 0 開始,這意味著第一個元素的索引為 0,第二個元素的索引為 1,依此類推。
要訪問一維數(shù)組中的元素,可以使用方括號 [] 并指定元素的索引。
示例:
import numpy as np # 創(chuàng)建一維數(shù)組 arr = np.array([1, 2, 3, 4, 5]) # 訪問第一個元素 print(arr[0]) # 輸出:1 # 訪問第二個元素 print(arr[1]) # 輸出:2 # 訪問最后一個元素 print(arr[-1]) # 輸出:5
訪問二維數(shù)組元素
要訪問二維數(shù)組中的元素,可以使用逗號分隔的兩個索引:第一個索引表示行,第二個索引表示列。
示例:
import numpy as np # 創(chuàng)建二維數(shù)組 arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) # 訪問第一行第一個元素 print(arr[0, 0]) # 輸出:1 # 訪問第二行第三列元素 print(arr[1, 2]) # 輸出:6 # 訪問最后一個元素 print(arr[-1, -1]) # 輸出:9
訪問三維及更高維數(shù)組元素
對于三維及更高維數(shù)組,可以使用逗號分隔的多個索引來訪問元素,每個索引表示相應(yīng)維度的索引。
示例:
import numpy as np # 創(chuàng)建三維數(shù)組 arr = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]) # 訪問第一個數(shù)組的第二個數(shù)組的第三個元素 print(arr[0, 1, 2]) # 輸出:6
負(fù)索引
NumPy 還支持負(fù)索引,從數(shù)組的末尾開始計(jì)數(shù)。
例如,要訪問二維數(shù)組的最后一個元素,可以使用 arr[-1, -1]。
練習(xí)
創(chuàng)建一個 5x5 的二維數(shù)組 arr,并打印以下元素:
第一行的第一個元素 第二行的最后一個元素 第三列的第一個元素 第三個元素
在評論中分享您的代碼和輸出。
最后
以上就是NumPy數(shù)組創(chuàng)建方法與索引訪問詳解的詳細(xì)內(nèi)容,更多關(guān)于NumPy數(shù)組創(chuàng)建和索引訪問的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python和websocket構(gòu)建實(shí)時日志跟蹤器的步驟
這篇文章主要介紹了python和websocket構(gòu)建實(shí)時日志跟蹤器的步驟,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-04-04
python實(shí)現(xiàn)逐個讀取txt字符并修改
今天小編就為大家分享一篇python實(shí)現(xiàn)逐個讀取txt字符并修改,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12
python從入門到實(shí)踐之組合數(shù)據(jù)類型
這篇文章主要為大家介紹了python組合數(shù)據(jù)類型,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-01-01
GitHub上值得推薦的8個python 項(xiàng)目
GitHub 無疑是代碼托管領(lǐng)域的先行者,Python 作為一種通用編程語言,已經(jīng)被千千萬萬的開發(fā)人員用來構(gòu)建各種有意思或有用的項(xiàng)目。以下我們會介紹一些使用 Python 構(gòu)建的GitHub上優(yōu)秀的項(xiàng)目。2020-10-10
Python 類與元類的深度挖掘 II【經(jīng)驗(yàn)】
元類在 Python 中屬于比較深層的黑魔法,在一般的日常應(yīng)用中可能并不常用,但理解其背后的原理對于理解 Python 面向?qū)ο缶幊桃约耙磺薪詾閷ο蟮睦砟詈苡袔椭?;如果你需要對類進(jìn)行深度改造,至少要知道從何入手。2016-05-05
解決項(xiàng)目pycharm能運(yùn)行,在終端卻無法運(yùn)行的問題
今天小編就為大家分享一篇解決項(xiàng)目pycharm能運(yùn)行,在終端卻無法運(yùn)行的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01

