基本信息
文件名称:python?numpy?中linspace函数示例详解.docx
文件大小:17.51 KB
总页数:5 页
更新时间:2025-05-21
总字数:约2.68千字
文档摘要

python?numpy?中linspace函数示例详解

目录pythonnumpy中linspace函数1.快速了解2.linspace函数语法3.示例3.1从0到1,间隔为0.1的数值序列3.2从0到100,间隔为10的数值序列3.3使用endpoint参数3.4手动指定数据类型4.总结

pythonnumpy中linspace函数

numpy提供linspace函数(有时也称为np.linspace)是python中创建数值序列工具。与Numpyarange函数类似,生成结构与Numpy数组类似的均匀分布的数值序列。两者虽有些差异,但大多数人更愿意使用linspace函数,其很好理解,但我们需要去学习如何使用。

本文我们学习linspace函数及其他语法,并通过示例解释具体参数。最后也顺便提及np.linspace和np.arange之间的差异。

1.快速了解

通过定义均匀间隔创建数值序列。其实,需要指定间隔起始点、终止端,以及指定分隔值总数(包括起始点和终止点);最终函数返回间隔类均匀分布的数值序列。请看示例:

np.linspace(start=0,stop=100,num=5)

代码生成NumPy数组(ndarray对象),结果如下:array([0.,25.,50.,75.,100.])

如图:

让我们解释下,Numpylinspace函数依照定义间隔生成均匀分布的数值。我们使用start和stop参数指定间隔,这里我们设定为0和100,同时指定在范围内生产5个观测值,因此函数生成5个均匀分布的元素。第一个是0,最后一个100,其他三个分布在0和100之间。

下面我们详细看下linspace函数的参数,让你更清楚理解其机制。

2.linspace函数语法

linspace的语法非常简单直接。如下图所示,首先是函数名称,对应代码为np.linspace(假设你已导入importeNumPyasnp)。

图2

上图有三个参数,是平常使用最频繁的三个参数。还有其他的可选参数,下面我们讨论其参数。

为了理解参数,我们再次看图示:

start

start参数数值范围的起始点。如果设置为0,则结果的第一个数为0.该参数必须提供。

stop

stop参数数值范围的终止点。通常其为结果的最后一个值,但如果修改endpoint=False,则结果中不包括该值(后面示例会说明)。

num(可选)

num参数控制结果中共有多少个元素。如果num=5,则输出数组个数为5.该参数可选,缺省为50.

endpoint(可选)

endpoint参数决定终止值(stop参数指定)是否被包含在结果数组中。如果endpoint=True,结果中包括终止值,反之不包括。缺省为True。

dtype(可选)

和其他的NumPy一样,np.linspace中的dtype参数决定输出数组的数据类型。如果不指定,python基于其他参数值推断数据类型。如果需要可以显示指定,参数值为NumPy和Python支持的任意数据类型。

我们并不需要每次都使用所有参数,如果缺省值可以满足我们需求。一般start,stop,num比endpoint和dtype常用。

位置参数vs命名参数

实际调用时无需显示指定参数名称,可以通过参数位置直接匹配:

np.linspace(0,100,5)

上面代码和前面示例的功能一样:np.linspace(start=0,stop=100,num=5)。

前者使用位置匹配,后者使用名称匹配。位置匹配让代码简捷,名称匹配使代码更可读,实际应用中我们鼓励使用名称匹配调用函数。

3.示例

下面通过示例学习每个参数含义。

3.1从0到1,间隔为0.1的数值序列

np.linspace(start=0,stop=1,num=11)

输出结果为:

array([0.,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.])

当你需要百分比场景时比较有用。

3.2从0到100,间隔为10的数值序列

np.linspace(start=0,stop=100,num=11)

输出结果为: