1 linspace在numpy中是创建等差数列,
先看例子:
A = np.linspace(1,11,11)
结果:array([ 1., 2., 3., 4., 5., 6., 7., 8., 9., 10., 11.])
因此可以看到lisapce接口的第一个参数1是等差数列的第一项,第二个参数11是最后一项,第3个参数11为等差数列的元素个数,共含有11个元素。
根据等差数列的通项公式: an = a1 + (n-1)*d,已知 an, a1, n,自然 d 就确定了。
2 logspace在numpy中是创建等比数列,
先看例子:
A = np.logspace(1,11,11)
结果:
array([ 1.00000000e+01, 1.00000000e+02, 1.00000000e+03,
1.00000000e+04, 1.00000000e+05, 1.00000000e+06,
1.00000000e+07, 1.00000000e+08, 1.00000000e+09,
1.00000000e+10, 1.00000000e+11])
创建的元素的默认以10为底,如上所示,第一个参数代表的意思是等比数列的次幂为1,第二个参数代表等比数列的次幂为11, 第三个参数仍然是数列含有的所有项数为11 。
根据等比数列的通项公式:,已知
a1 = q^参数1, an = a1 * q^参数2,n = 11,所以 q 自然就确定了, 如下所示,指定base = 2,
A = np.logspace(1,3, 5, base=2)
结果:
array([ 2. , 2.82842712, 4. , 5.65685425, 8. ])
可以看出第一项为2,最后一项为2^3=8,一共有5项,这时候的公比大约等于1.4,不要和base=2混淆了!
注意base=2,可不是意味着底也是为2!
谢谢您的阅读,期待您的到来。
欢迎关注《算法channel》
主要推送关于算法的分析过程及应用的消息。培养思维能力,注重过程,挖掘背后的原理,刨根问底。本着严谨和准确的态度,目标是撰写实用和启发性的文章,欢迎您的关注。