gpt4 book ai didi

python - 在 numpy 中获取 polyfit 的反函数

转载 作者:太空宇宙 更新时间:2023-11-03 12:37:29 25 4
gpt4 key购买 nike

我通过以下方式将二阶多项式拟合到多个 x/y 点:

poly  = np.polyfit(x, y, 2)

如何在 python 中反转此函数,以获得对应于特定 y 值的两个 x 值?

最佳答案

这是一个示例,展示了如何组合您的 poly我的回答是 Inverse function of numpy.polyval() .

首先是一些数据:

In [44]: x
Out[44]: array([0, 1, 2, 3, 4, 5, 6, 7])

In [45]: y
Out[45]: array([ 9, 4, 0, -1, -1, 4, 8, 16])

对数据拟合多项式:

In [46]: poly = np.polyfit(x, y, 2)

找到多项式的值为 y0

In [47]: y0 = 4

为此,创建一个 poly1d 对象:

In [48]: p = np.poly1d(poly)

然后找到 p - y0 的根:

In [49]: (p - y0).roots
Out[49]: array([ 5.21787721, 0.90644711])

检查:

In [54]: x0 = (p - y0).roots

In [55]: p(x0)
Out[55]: array([ 4., 4.])

关于python - 在 numpy 中获取 polyfit 的反函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42179087/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com