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 到 20 均匀的取 5 个数据。 输出如下:
[10. 12.5 15. 17.5 20.]
示例 2
序列中是否包含 stop
值,默认为 ture
。不包含结束值的分割,相当于间隔数量。
# 将 endpoint 设为 false
import numpy as np
x = np.linspace(10, 20, 5, endpoint = False)
print(x)
输出如下:
[10. 12. 14. 16. 18.]
示例 3
retsetp 用于标识是否要在结果中加入步长值。如果为 true
,返回样例,以及连续数字之间的步长
# 输出 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.]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: NumPy 来自现有数据的数组
下一篇: 彻底找到 Tomcat 启动速度慢的元凶
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论