Numpy中的logspace()是一个用于生成等比数列数据的函数。等比数列就是两个相邻的数之比为一个固定的常数k,即a(n+1)/a(n) = k。Numpy中的logspace()函数可以在指定的范围内生成等比数列,以10为底数取对数,比如生成从10的1次方到10的4次方之间4个数,可以使用logspace(1, 4, 4)函数。
logspace()函数的基本使用方法如下:
numpy.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None)
参数说明:
start:起始值。base ** start为logspace的第一个元素!
stop:终止值。base ** stop为logspace的最后一个元素!
num:生成的等比数列中的元素个数。如果没有设置这个参数,缺省值为50。
endpoint:如果为True,终止值包含在数列中,反之则不包含。默认为True。
base:对数的底数。默认为10。
dtype:输出数组的数据类型。如果没有设置,缺省值为numpy.float64。
我们可以使用logspace()方法生成一组等比数列,例如产生从1到100范围之内的10个数的等比数列:
import numpy as np
x = np.logspace(0, 2, 10, endpoint=True)
print(x)
输出:
[ 1. 1.29154967 1.66810054 2.15443469 2.7825594
3.59381366 4.64158883 5.9948425 7.74263683 10. ]
上面的代码中,我们使用了logspace()方法生成了一个起始值为1,终止值为100的等比数列,共计10个元素。
除了使用默认的底数10生成等比数列之外,我们还可以生成其他底数的等比数列,例如以2为底数的等比数列:
import numpy as np
x = np.logspace(0, 8, 9, base=2)
print(x)
输出:
[ 1. 2. 4. 8. 16. 32.
64. 128. 256. ]
上面的代码中,我们使用了logspace()方法生成了一个起始值为1,终止值为256,共计9个元素的等比数列。而且,我们指定了底数为2。
还有一个以3为底数的等比数列:
import numpy as np
x = np.logspace(0, 3, 4, base=3)
print(x)
输出:
[ 1. 3. 9. 27. ]
上面的代码中,我们使用了logspace()方法生成了一个起始值为1,终止值为27,共计4个元素的等比数列。而且,我们指定了底数为3。
本文链接:http://task.lmcjl.com/news/17100.html