NumPy來自數值範圍的數組
NumPy - 來自數值範圍的數組
這一章中,我們會學到如何從數值範圍創建數組。
numpy.arange
這個函數返回ndarray
對象,包含給定範圍內的等間隔值。
numpy.arange(start, stop, step, dtype)
構造器接受下列參數:
序號
參數及描述
1.
start
範圍的起始值,默認爲0
2.
stop
範圍的終止值(不包含)
3.
step
兩個值的間隔,默認爲1
4.
dtype
返回ndarray
的數據類型,如果沒有提供,則會使用輸入數據的類型。
下面的例子展示瞭如何使用該函數:
示例 1
import numpy as np
x = np.arange(5)
print x
輸出如下:
[0 1 2 3 4]
示例 2
import numpy as np
# 設置了 dtype
x = np.arange(5, dtype = float)
print x
輸出如下:
[0. 1. 2. 3. 4.]
示例 3
# 設置了起始值和終止值參數
import numpy as np
x = np.arange(10,20,2)
print x
輸出如下:
[10 12 14 16 18]
numpy.linspace
此函數類似於arange()
函數。 在此函數中,指定了範圍之間的均勻間隔數量,而不是步長。 此函數的用法如下。
numpy.linspace(start, stop, num, endpoint, retstep, dtype)
構造器接受下列參數:
序號
參數及描述
1.
start
序列的起始值
2.
stop
序列的終止值,如果endpoint
爲true
,該值包含於序列中
3.
num
要生成的等間隔樣例數量,默認爲50
4.
endpoint
序列中是否包含stop
值,默認爲ture
5.
retstep
如果爲true
,返回樣例,以及連續數字之間的步長
6.
dtype
輸出ndarray
的數據類型
下面的例子展示了linspace
函數的用法。
示例 1
import numpy as np
x = np.linspace(10,20,5)
print x
輸出如下:
[10. 12.5 15. 17.5 20.]
示例 2
# 將 endpoint 設爲 false
import numpy as np
x = np.linspace(10,20, 5, endpoint = False)
print x
輸出如下:
[10. 12. 14. 16. 18.]
示例 3
# 輸出 retstep 值
import numpy as np
x = np.linspace(1,2,5, retstep = True)
print x
# 這裏的 retstep 爲 0.25
輸出如下:
(array([ 1. , 1.25, 1.5 , 1.75, 2. ]), 0.25)
numpy.logspace
此函數返回一個ndarray
對象,其中包含在對數刻度上均勻分佈的數字。 刻度的開始和結束端點是某個底數的冪,通常爲 10。
numpy.logscale(start, stop, num, endpoint, base, dtype)
logspace
函數的輸出由以下參數決定:
序號
參數及描述
1.
start
起始值是base ** start
2.
stop
終止值是base ** stop
3.
num
範圍內的數值數量,默認爲50
4.
endpoint
如果爲true
,終止值包含在輸出數組當中
5.
base
對數空間的底數,默認爲10
6.
dtype
輸出數組的數據類型,如果沒有提供,則取決於其它參數
下面的例子展示了logspace
函數的用法。
示例 1
import numpy as np
# 默認底數是 10
a = np.logspace(1.0, 2.0, num = 10)
print a
輸出如下:
[ 10. 12.91549665 16.68100537 21.5443469 27.82559402
35.93813664 46.41588834 59.94842503 77.42636827 100. ]
示例 2
# 將對數空間的底數設置爲 2
import numpy as np
a = np.logspace(1,10,num = 10, base = 2)
print a
輸出如下:
[ 2. 4. 8. 16. 32. 64. 128. 256. 512. 1024.]