Python SciPy UnivariateSpline返回NaN – 范围内的值
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python SciPy UnivariateSpline返回NaN – 范围内的值,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含822字,纯文字阅读大概需要2分钟。
内容图文
![Python SciPy UnivariateSpline返回NaN – 范围内的值](/upload/InfoBanner/zyjiaocheng/749/ed511e63957c4f95bc7651287e49da48.jpg)
我正在尝试使用SciPy的UnivariateSpline来定位曲线上的一个点.不幸的是,我的结果是nan.
这是一个最小的例子:
from scipy.interpolate import UnivariateSpline
spline = UnivariateSpline([0.6, 0.4, 0.2, 0.0], [-0.3, -0.1, 0.1, 0.3], w=None, bbox=[None, None], k=1, s=0)
POINT = spline([0.15])
print POINT
结果是[NaN].
我想念UnivariateSpline的哪个功能?
我正在使用Python 2.6.6和scipy版本0.7.2
我不能保证我总是增加数据点,因此interp可能不是替代品.
解决方法:
正如docstring for UnivariateSpline所述,x中的值必须增加.如果要使用UnivariateSpline,则必须对数据进行排序.例如.这样的事情:
In [71]: x = np.array([0.6, 0.4, 0.2, 0.0])
In [72]: y = np.array([-0.3, -0.1, 0.1, 0.3])
In [73]: order = np.argsort(x)
In [74]: spline = UnivariateSpline(x[order], y[order], w=None, bbox=[None, None], k=1, s=0)
In [75]: spline([0.15])
Out[75]: array([ 0.15])
内容总结
以上是互联网集市为您收集整理的Python SciPy UnivariateSpline返回NaN – 范围内的值全部内容,希望文章能够帮你解决Python SciPy UnivariateSpline返回NaN – 范围内的值所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。