初探numpy 陣列的建立

2022-07-26 02:18:14 字數 4335 閱讀 1624

import numpy as np

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

print(array)

[1 2 3]
numpy.empty方法可以建立乙個指定形狀、資料型別且未初始化的陣列

numpy.empty(shape , dtype = float , order = 'c')
引數

描述shape

陣列形狀

dtype

資料型別

array=np.empty((3,4))

print(array)

[[1.35966218e-311 1.35966218e-311 1.35966218e-311 1.05699242e-307]

[8.01097889e-307 1.78020169e-306 7.56601165e-307 1.02359984e-306]

[1.33510679e-306 2.22522597e-306 1.24611674e-306 1.29061821e-306]]

numpy.zeros方法可以建立乙個指定大小的陣列,陣列元素以0來填充

numpy.zeros(shape , dtype = float , order = 'c')
引數

描述shape

陣列形狀

dtype

資料型別

array=np.zeros((4,5))

print(array)

[[0. 0. 0. 0. 0.]

[0. 0. 0. 0. 0.]

[0. 0. 0. 0. 0.]

[0. 0. 0. 0. 0.]]

numpy.ones方法可以建立乙個指定大小的陣列,陣列元素以1來填充

numpy.ones(shape , dtype = float , order = 'c')
引數

描述shape

陣列形狀

dtype

資料型別

array=np.ones((4,4))

print(array)

[[1. 1. 1. 1.]

[1. 1. 1. 1.]

[1. 1. 1. 1.]

[1. 1. 1. 1.]]

numpy.eye方法可以建立乙個正方的n*n單位矩陣(對角線為1,其餘為0)

array=np.eye(3)

print(array)

[[1. 0. 0.]

[0. 1. 0.]

[0. 0. 1.]]

numpy.asarray方法可以將輸入轉換為ndarray,如果輸入本身就是ndarray則不進行複製

numpy.asarray(a , dtype = none , order = none)
引數描述a

任意輸入,可以是列表、列表的元組、元組、元組的元組、多維陣列

dtype

資料型別

# 將列表轉換為ndarray

a=[1,2,3]

array=np.asarray(a)

print(array)

[1 2 3]
#將元組轉化為ndarray

a=(1,2,3)

array=np.asarray(a)

print(a)

(1, 2, 3)
# 將元組列表轉換為ndarray

a=[(1,2,3),(4,5)]

array=np.asarray(a)

print(a)

[(1, 2, 3), (4, 5)]
使用numpy.arange方法建立數值範圍陣列並返回ndarray物件

numpy.arange(start , stop , step, dtype)
引數

描述start

起始值,預設為1

stop

終止值step

步長,預設為1

dtype

ndarray資料型別

# 生成0到6的陣列

array=np.arange(6)

print(array)

[0 1 2 3 4 5]
# 設定dtype

array=np.arange(6,dtype=float)

print(array)

[0. 1. 2. 3. 4. 5.]
# 設定起始值,終止值,步長

array=np.arange(10,20,3)

print(array)

[10 13 16 19]
numpy.linspace用於建立乙個一維等差數列的陣列

numpy.linspace(start , stop, num=50 , endpoint=true , retstep = false , dtype = none)
引數

描述start

起始值stop

終止值num

要生成等步長的樣本數量,預設為50

endpoint

該值為true時,數列中包含stop值,預設為true

retstep

該值為true時,顯示間距,預設為false

dtype

ndarray的資料型別

# 生成1到10的10個數值組成的等差序列

array=np.linspace(1,10,10)

print(array)

[ 1.  2.  3.  4.  5.  6.  7.  8.  9. 10.]
# 將endpoint設為false

array=np.linspace(1,10,10,endpoint=false)

print(array)

[1.  1.9 2.8 3.7 4.6 5.5 6.4 7.3 8.2 9.1]
# 顯示間距

array=np.linspace(1,10,10,retstep=true)

print(array)

(array([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.]), 1.0)
numpy.linspace用於建立乙個一維等比數列的陣列

numpy.linspace(start , stop , num = 50 , endpoint = true , base = 10.0 , dtype = none)
引數

描述start

起始值:base^start

stop

終止值:base^stop

num要生成的樣本數量,預設為50

endpoint

該值為true時,數列中包含stop值,預設為true

base

對數log的底數

dtype

ndarray的資料型別

# 生成10^1到10^10的乙個等比數列

array=np.logspace(1,10,num=10)

print(array)

[1.e+01 1.e+02 1.e+03 1.e+04 1.e+05 1.e+06 1.e+07 1.e+08 1.e+09 1.e+10]
#將底數設定為2

array=np.logspace(1,10,num=10,base=2)

print(array)

[   2.    4.    8.   16.   32.   64.  128.  256.  512. 1024.]

numpy陣列的建立

建立陣列最簡單的方法就是使用array函式。它接收一切序列型的物件 包括其他陣列 然後產生乙個新的含有傳入資料的numpy陣列。array函式建立陣列import numpy as np ndarray1 np.array 1,2,3,4 ndarray2 np.array list abcdefg...

Numpy 陣列的建立

1 numpy.arange 相當於matlab中的 a 0 14 建立的是列向量 print np.arange 15 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 print type np.arange 15 print np.arange 15 reshape 3,5...

numpy的陣列建立

1 建立乙個長度為10的陣列,陣列的值都為0 print np.zeros 10,dtype int 2 建立乙個3 5的浮點型陣列,陣列的值全部為1 np.ones 3,5 dtype float 3 建立乙個3 5的浮點型陣列,陣列的值全部為8 np.full 3,5 8 4 建立乙個線性序列陣...