简单记录下Python利用Numpy创建数据的几种方式。
1. numpy.arange函数
格式如下:numpy.arange(start, stop, step, dtype)
参数 | 描述 |
---|---|
start | 起始值,默认为0 |
stop | 终止值(不包含) |
step | 步长,默认为1 |
dtype | 返回ndarray的数据类型,如果没有提供,则会使用输入数据的类型。 |
- 示例1
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: Hren
import numpy as np
a = np.arange(5)
b = np.arange(5, dtype = float)
c = np.arange(10,20,2)
print('a:', a, '\n'
'b:', b, '\n'
'c:', c, '\n')
- 输出结果如下:
a: [0 1 2 3 4]
b: [0. 1. 2. 3. 4.]
c: [10 12 14 16 18]
2. numpy.linspace函数
格式如下:np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
参数 | 描述 |
---|---|
start | 序列的起始值 |
stop | 序列的终止值,如果endpoint为true,该值包含于数列中 |
num | 要生成的等步长的样本数量,默认为50 |
endpoint | 该值为 ture 时,数列中中包含stop值,反之不包含,默认是True。 |
retstep | 如果为 True 时,生成的数组中会显示间距,反之不显示。 |
dtype | ndarray 的数据类型 |
- 示例2
import numpy as np
a = np.linspace(1,10,10) # 从小到大
b = np.linspace(10,1,10) # 从大到小
c = np.linspace(0, 20, 5, endpoint = False) # 将 endpoint 设为 false,不包含终止值:
d = np.linspace(0, 20, 5, endpoint = True) # 将 endpoint 设为 True,包含终止值:
print('a:', a, '\n'
'b:', b, '\n'
'c:', c, '\n'
'd:', d, '\n')
- 输出结果如下:
a: [ 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.]
b: [10. 9. 8. 7. 6. 5. 4. 3. 2. 1.]
c: [ 0. 4. 8. 12. 16.]
d: [ 0. 5. 10. 15. 20.]
3. numpy.logspace函数
格式如下:np.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None)
参数 | 描述 |
---|---|
start | 序列的起始值为:base ** start |
stop | 序列的终止值为:base ** stop。如果endpoint为true,该值包含于数列中 |
num | 要生成的等步长的样本数量,默认为50 |
endpoint | 该值为 ture 时,数列中中包含stop值,反之不包含,默认是True。 |
base | 对数 log 的底数。 |
dtype | ndarray 的数据类型 |
- 示例3
import numpy as np
a = np.logspace(1, 2, 10) # 默认底数是 10
b = np.logspace(0, 9, 10,base=2) # 设置底数为 2
print('a:', a, '\n'
'b:', b, '\n')
- 输出结果如下:
a: [ 10. 12.91549665 16.68100537 21.5443469 27.82559402
35.93813664 46.41588834 59.94842503 77.42636827 100. ]
b: [ 1. 2. 4. 8. 16. 32. 64. 128. 256. 512.]