1. 程式人生 > >np.linspace與np.logspace

np.linspace與np.logspace

np.linspace

np.linspace()常用於建立等差數列,它常用的有3個引數,第一個引數表示起始點,第二個引數終止點,第三個引數表示數列的個數;

# 建立起始點是1,終止點是10,並且包含10個元素的等差數列
>>> np.linspace(1,10,10)
array([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])

也可以用它建立恆等數列

# 建立包含10個元素全是2.0的數列
>>> np.linspace(2,2,10)
array([2., 2., 2., 2., 2., 2., 2., 2., 2., 2.])

通過設定endpoint=False使得結束點不包括第二個引數

# 起始點為1,終止點<10的10個等差數列
>>> np.linspace(1,10,10,endpoint=False)
array([1. , 1.9, 2.8, 3.7, 4.6, 5.5, 6.4, 7.3, 8.2, 9.1])

np.logspace

np.logspace()常用於建立等比數列,它也有常用的3個引數,第一個引數表示起始點的指數,第二個引數終止點的指數,第三個引數表示數列的個數;

# 建立初始指數是1,包含10個元素的等比數列
# 底數預設是10
>>> np.logspace(1,10,10)
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])

同樣,它也可以建立恆等數列;

>>> np.logspace(1,1,10)
array([10., 10., 10., 10., 10., 10., 10., 10., 10., 10.])

最後,通過base引數可以修改底數

# 修改底數為2
>>> np.logspace(1,10,10,base=2)
array([   2.,    4.,    8.,   16.,   32.,   64.,  128.,  256.,  512.,
       1024.])