千家信息网

如何使用numpy生成数组的零值

发表于:2024-12-05 作者:千家信息网编辑
千家信息网最后更新 2024年12月05日,这篇文章主要介绍"如何使用numpy生成数组的零值"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"如何使用numpy生成数组的零值"文章能帮助大家解决问题。今天
千家信息网最后更新 2024年12月05日如何使用numpy生成数组的零值

这篇文章主要介绍"如何使用numpy生成数组的零值"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"如何使用numpy生成数组的零值"文章能帮助大家解决问题。

今天在用numpy写sinc函数时偶然发现在x=0时函数居然能取到1,觉得很不可思议,按理来说在x=0时函数无意义,研究了一下,发现竟然时numpy在生成数组时自动用一个很小的数代替了0。

In[2]: import numpy as npIn[3]: np.arange(-1, 1, 0.1)Out[3]: array([ -1.00000000e+00, -9.00000000e-01, -8.00000000e-01,    -7.00000000e-01, -6.00000000e-01, -5.00000000e-01,    -4.00000000e-01, -3.00000000e-01, -2.00000000e-01,    -1.00000000e-01, -2.22044605e-16,  1.00000000e-01,     2.00000000e-01,  3.00000000e-01,  4.00000000e-01,     5.00000000e-01,  6.00000000e-01,  7.00000000e-01,     8.00000000e-01,  9.00000000e-01])In[4]: np.linspace(-1, 0.9, 20)Out[4]: array([ -1.00000000e+00, -9.00000000e-01, -8.00000000e-01,    -7.00000000e-01, -6.00000000e-01, -5.00000000e-01,    -4.00000000e-01, -3.00000000e-01, -2.00000000e-01,    -1.00000000e-01, -1.11022302e-16,  1.00000000e-01,     2.00000000e-01,  3.00000000e-01,  4.00000000e-01,     5.00000000e-01,  6.00000000e-01,  7.00000000e-01,     8.00000000e-01,  9.00000000e-01])

其中arange和linspace两个函数在本应该为0的地方用一个e-16的非常小的数代替了。

关于"如何使用numpy生成数组的零值"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。

0