numpy.linspace函数

函数:numpy.linspace(start,stop,num=50,endpoint=True,retstep=False,dtype=None)

参数:

  • start:scalar类型(个人理解是标量的意思,这不是一个具体的数据类型,而是指某一些数据类型,比如int,float,bool,long,str等等都属于sclar类型)。这个数参数表示这个序列的开始值。
  • stop:scalar类型。如果endpoint=True。那么stop就是序列的终止数值。当endpoint=False时,返回值中不包含最后一个端点,并且步长会改变。
  • num:int型,可选参数,默认值为50。表示要生成的样本数,必须是非负值。
  • endpoint:bool类型。可选参数,默认值为True,这时stop就是最后的样本。为False时,不包含stop的值。
  • retstep:bool类型。可选参数,默认值为True,这时返回值是(samples,step),前面的是数组,后面是步长。
  • dtype:表示输出的数组的数据类型,如果没有给出就从其他输入中推断输出的类型

返回值:

  • samples:ndarray类型。在[start,stop]闭区间,或者[start,stop)半闭合区间中,数量为num,步长相等的样本。至于包不包含stop取决于endpoint参数的取值。
  • step:float类型。可选。只有restep参数取值为True时才会返回这个返回值,表示样本中步长。

例子:

  • 包含了endpoint的情况,对于这种情况,步长就是1+24x=49,也就是stop参数跟start参数相差了(num-1),并且返回的样本中包含stop的值
>>> import numpy as np
>>> a,b = np.linspace(1,49,25,True,True)
>>> a
array([ 1.,  3.,  5.,  7.,  9., 11., 13., 15., 17., 19., 21., 23., 25.,
       27., 29., 31., 33., 35., 37., 39., 41., 43., 45., 47., 49.])
>>> b
2.0
  • 不包含了endpoint的情况,注意此时的step返回值,与上一个例子不一样。步长是1+25y=49,也就是stop参数跟start参数相差了(num),并且返回的样本中不包含stop的值
>>> sample,step = np.linspace(1,49,25,False,True)
>>> sample
array([ 1.  ,  2.92,  4.84,  6.76,  8.68, 10.6 , 12.52, 14.44, 16.36,
       18.28, 20.2 , 22.12, 24.04, 25.96, 27.88, 29.8 , 31.72, 33.64,
       35.56, 37.48, 39.4 , 41.32, 43.24, 45.16, 47.08])
>>> step
1.92

猜你喜欢

转载自blog.csdn.net/rainpasttime/article/details/79847674