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

如何使用NumPy新Polynomial API进行线性模型预测?

NumPy新Polynomial API预测问题修正方案

问题概述

使用NumPy旧版poly1d可正常完成线性拟合与预测,但切换到新numpy.polynomial.Polynomial API时,预测代码无法正常工作。

错误原因

Polynomial.fit()方法返回的已经是拟合完成的Polynomial实例,无需再用Polynomial(model)重新构造模型。错误的构造方式会导致模型无法正确接收输入并执行预测。

修正后的新版API代码

# linear model using numpy.polynomial (new api)
from numpy.polynomial import Polynomial
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

# 直接从已创建的DataFrame中提取数据,避免重复转换
X = df['X']
y = df['y']

# 拟合趋势线
model = Polynomial.fit(X[:39].values, y[:39].values, 1)

# 直接使用拟合好的model进行预测,无需重新构造Polynomial实例
predict_result = model(X[39:].values)
print(predict_result)

额外说明

  • Polynomial.fit()会自动对输入数据做标准化(缩放+平移)处理,若需要获取原始坐标系下的多项式系数,可调用model.convert()方法:
    # 获取原始系数
    original_coeffs = model.convert().coef
    print(original_coeffs)
    
  • 若要直接用原始系数创建模型,可使用Polynomial(coeffs),但这种方式不会自动标准化数据,拟合稳定性可能不如Polynomial.fit()。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 12:01:06