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 set
x = np.arange(5, dtype = float)
print x
这里的输出将是-
[0. 1. 2. 3. 4.]
示例3
# start and stop parameters set
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 默认为True,因此停止值包含在序列中。如果为False,不包含在序列中 |
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 set to false
import numpy as np
x = np.linspace(10,20, 5, endpoint = False)
print x
输出结果将是−
[10. 12. 14. 16. 18.]
示例3
# find retstep value
import numpy as np
x = np.linspace(1,2,5, retstep = True)
print x
# retstep here is 0.25
现在,输出将为 −
(array([ 1. , 1.25, 1.5 , 1.75, 2. ]), 0.25)
numpy.logspace
该函数返回一个 ndarray 对象,其中包含在对数刻度上均匀间隔的数字。刻度的起点和终点是基数的指数,通常为10。
numpy.logspace(start, stop, num, endpoint, base, dtype)
以下参数确定了 logspace 函数的输出。
Sr.No. | Parameter & Description |
---|---|
1 | start 开始的点是基础:start |
2 | stop 序列的最终值是基础:stop |
3 | num 范围内的值的数量。默认值为50 |
4 | endpoint 如果为True,则stop是范围内的最后一个值 |
5 | base 对数空间的基数,默认值为10 |
6 | dtype 输出数组的数据类型。如果没有给出,则取决于其他输入参数 |
以下示例将帮助您理解 logspace 函数。
示例 1
import numpy as np
# default base is 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
# set base of log space to 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.]