2024-05-13|閱讀時間 ‧ 約 24 分鐘

[Python基礎]NumPy創建陣列常用指令

NumPy(Numeric Python)是Python中用於科學計算的核心庫之一。它提供了高性能的多維陣列對象(即ndarray)以及用於處理這些陣列的各種函數和工具。


在NumPy中,有幾個常用的指令可以用來創建陣列

從Python列表創建陣列

將Python的列表轉換為NumPy的一維陣列

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

創建全零的陣列

創建一個2x3全零陣列(二維陣列)

np.zeros((2, 3))

創建一個1x3全零的一維陣列

np.zeros(3)

創建全為一的陣列

創建一個3x2全一陣列。

np.ones((3, 2))

類似於np.zeros,這個方法也是創建指定形狀的陣列,但所有元素都是一

創建一個範圍陣列

類似於Python的range()函數,創建了一個從起始值到結束值(不包含結束值)的等間隔數列

np.arange(start, stop, step)

創建一個等間隔的陣列

np.linspace(start, stop, num)

這個方法創建了一個從起始值到結束值(包含結束值)之間均勻分布的數列,數量由num指定。這對於在固定範圍內生成一定數量的值非常有用

隨機數生成

生成一個3x3的在[0, 1)範圍內的隨機陣列。

np.random.rand(3, 3)

生成一個3x3的在[low, high)範圍內的隨機整數陣列。

np.random.randint(low, high, size=(3, 3))



​程式範例

import numpy as np

# 使用np.array創建陣列
arr1 = np.array([1, 2, 3])
print("np.array([1, 2, 3]):", arr1)

# 使用np.zeros創建全零陣列
arr2 = np.zeros((2, 3))
print("np.zeros((2, 3)):\n", arr2)

# 使用np.ones創建全一陣列
arr3 = np.ones((3, 2))
print("np.ones((3, 2)):\n", arr3)

# 使用np.arange創建範圍陣列
arr4 = np.arange(1, 10, 2)
print("np.arange(1, 10, 2):", arr4)

# 使用np.linspace創建等間隔陣列
arr5 = np.linspace(0, 1, 5)
print("np.linspace(0, 1, 5):", arr5)

# 使用np.random.rand 創建亂數陣列
arr6 = np.random.rand(3, 3)
print("np.random.rand(3, 3):", arr6)

# 使用np.random.randint 創建亂數陣列
arr7 = np.random.randint(1, 10, size=(3, 3))
print("np.random.randint(low, high, size=(3, 3)):", arr7)

印出以下內容:

np.array([1, 2, 3]): [1 2 3]

np.zeros((2, 3)):
[[0. 0. 0.]
[0. 0. 0.]]

np.ones((3, 2)):
[[1. 1.]
[1. 1.]
[1. 1.]]

np.arange(1, 10, 2): [1 3 5 7 9]

np.linspace(0, 1, 5): [0. 0.25 0.5 0.75 1. ]

np.random.rand(3, 3):
[[0.93920147 0.64416522 0.90436157]
[0.42144139 0.06812553 0.5656098 ]
[0.3546505 0.50234629 0.73172502]]

np.random.randint(low, high, size=(3, 3)):
[[5 1 8]
[6 2 7]
[9 7 9]]


這些創建方法是NumPy中常用的工具,可以根據需要創建不同形狀和類型的陣列,從而方便進行數據處理和計算。






分享至
成為作者繼續創作的動力吧!
利用簡單的程式範例,詳細及白話文的方式解釋
© 2024 vocus All rights reserved.