You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将不同x值代入numpy拟合得到的多项式求对应y值?

问题

使用numpy.polynomial.polynomial.fit()拟合得到多项式方程后,尝试直接设置x=10并令y=poly_fitting的方式无法计算对应y值,相关代码及运行结果如下:

from numpy.polynomial import Polynomial as poly
poly_fitting= poly.fit(x_trimmed, y_trimmed, 10)
print("poly_fitting=", poly_fitting)

运行输出:

poly_fitting= 0.0008463953270006118 - 5.892933087678905e-05 x**1 + 2.3178986039370123e-05 x**2 + 0.00028320046503272636 x**3 - 7.413659868838611e-05 x**4 - 0.0007190043777406841 x**5 -0.005478338718269069 x**6 + 0.0009052362092180649 x**7 + 0.008047614732994075 x**8 - 0.00040853198223002313 x**9 - 0.003261609071280533 x**10

如何实现代入不同x值计算对应的y值?

解决方法

  • 直接调用多项式对象:poly.fit()返回的是Polynomial类的实例,它可以像函数一样直接调用,传入x值就能得到对应的y值。示例代码:
    # 单个x值计算
    x = 10
    y = poly_fitting(x)
    print(y)
    
    # 多个x值批量计算(支持数组输入)
    x_array = [5, 10, 15]
    y_array = poly_fitting(x_array)
    print(y_array)
    
  • 原因说明:之前的方法无效是因为poly_fitting是封装好的多项式对象,不是可直接赋值变量的表达式。调用对象时,内部会自动完成多项式的求值计算,兼容单个数值、列表或numpy数组类型的输入。

内容的提问来源于stack exchange,提问作者MRR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 15:10:59