教程 > Numpy 教程 > NumPy 教程 阅读:30

NumPy 从数值范围创建数组

在本章中,我们将介绍NumPy从数值范围创建数组。

numpy.arange

numpy.arange 方法返回一个ndarray对象,其中包含给定范围内均匀间隔的值。语法如下

numpy.arange(start, stop, step, dtype)

参数说明如下

参数 描述
start 起始值,默认为0
stop 终止值(不包含)
step 步长,默认为1
dtype 返回ndarray的数据类型,如果没有提供,则会使用输入数据的类型。

下面我们通过示例来介绍该方法的使用

示例

import numpy as np 
x = np.arange(5) 
print(x)

运行示例

运行结果如下

[0  1  2  3  4]

指定dtype

import numpy as np 
x = np.arange(5, dtype = float)
print(x)

运行示例

运行结果如下

[0.  1.  2.  3.  4.] 

指定 start 和 stop参数,设置步长

import numpy as np 
x = np.arange(10,20,2) 
print(x)

运行示例

运行结果如下

[10  12  14  16  18]

numpy.linspace

numpy.linspace 方法类似于arange()。在此方法中指定间隔之间均匀间隔的值的数量而不是步长。语法如下

numpy.linspace(start, stop, num, endpoint, retstep, dtype)

参数说明如下

参数 描述
start 序列的起始值
stop 序列的终止值,如果endpoint为true,该值包含于数列中
num 要生成的等步长的样本数量,默认为50
endpoint 该值为 true 时,数列中包含stop值,反之不包含,默认是True。
retstep 如果为 True 时,生成的数组中会显示间距,反之不显示。
dtype ndarray 的数据类型

以下示例演示了linspace 方法的使用。

示例

设置开始值为10,终止值为20,数量为5个

import numpy as np 
x = np.linspace(10,20,5) 
print(x)

运行示例

运行结果如下

[10.   12.5   15.   17.5  20.]

将 endpoint 设置为 false,此时结果中将不包含终止值

import numpy as np 
x = np.linspace(10,20, 5, endpoint = False) 
print(x)

运行示例

运行结果如下

[10.   12.   14.   16.   18.]

下面我们将 retset参数设置为 True。看一下元素之间的步长。

import numpy as np 

x = np.linspace(1,2,5, retstep = True) 
print(x) 

运行示例

运行结果如下

(array([ 1.  ,  1.25,  1.5 ,  1.75,  2.  ]), 0.25)

上例中开始值为1,终止值为2,元素个数为5。所以步长为 0.25


numpy.logspace

numpy.logspace 方法用于创建一个指数数列的数组,就类似于一个等比数列。语法如下:

numpy.logspace(start, stop, num, endpoint, base, dtype)

其中,base是底数,默认为10。

该方法参数说明如下

参数 描述
start 序列的起始值为:base start
stop 序列的终止值为:basestop。如果endpoint为true,该值包含于数列中
num 要生成的等步长的样本数量,默认为50
endpoint 该值为 true 时,数列中中包含stop值,反之不包含,默认是True。
base 对数 log 的底数。
dtype ndarray 的数据类型

下面通过示例来帮助你了解logspace方法的功能。

示例

默认base为10,起始值start设置为1,终止值stop设置为2,元素个数为5。

import numpy as np 

a = np.logspace(1.0, 2.0, num = 5) 
print(a)

运行示例

运行结果如下

[ 10.          17.7827941   31.6227766   56.23413252 100.        ]

下面这个示例我们将底数base设置为2,起始值start为1,终止值stop为10,元素个数为10

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.] 

查看笔记

扫码一下
查看教程更方便