如何近似离散的numpy数组的根?

时间:2019-06-05 22:22:41

标签: python numpy matplotlib

我试图找到我的数据通过某个临界值(例如,通过零)的点,我想在数值上近似该临界值的发生位置。对于一种情况,我可以“手工”完成,但需要概括一下,以便可以对所有数据快速重复该过程数十次。

我曾经考虑过使用scipy.optimize,但我使用的是不遵循可用于调用fsolve的解析函数的真实离散数据。

这是一些代码和一个pyplot图片,显示了我的意思。如果这是我的数据,我想估计红色圆圈的发生位置,因为知道它不会直接出现在离散点的顶部。

x = np.arange(0, 2,.2)
f = 3-x**2-x

plt.scatter(x,f,marker='v')
plt.plot(x,f)
plt.hlines(0,0,2)
plt.scatter(1.3,0,color='r',zorder=10)

https://i.imgur.com/lbIjzpj.png

1 个答案:

答案 0 :(得分:0)

最简单的方法-您可以interpolate用x和y数据,以使其“更多”连续。然后查看0和y之间的最小值出现的位置。