利用多项式回归构建回归模型,并可以调整参数来改变多项式的次幂,给出代码
时间: 2024-11-10 13:14:16 浏览: 20
多项式回归是一种线性回归的扩展形式,它通过将输入特征与一系列幂函数相乘来构建非线性的预测模型。在Python中,我们可以使用`sklearn`库中的`PolynomialFeatures`和`LinearRegression`来实现这个过程。下面是一个简单的例子:
```python
# 导入所需库
from sklearn.preprocessing import PolynomialFeatures
from sklearn.linear_model import LinearRegression
import pandas as pd
import numpy as np
# 假设我们有数据集df,x列是自变量,y列是因变量
X = df['x'].values.reshape(-1, 1) # 将一维数组转换为二维数组
y = df['y'].values # 目标变量
# 创建一个多项式回归对象
degree = 2 # 我们想要构建一个二次多项式
poly = PolynomialFeatures(degree=degree)
# 使用fit_transform对数据进行转换,增加新的特征
X_poly = poly.fit_transform(X)
# 初始化线性回归模型
model = LinearRegression()
# 训练模型
model.fit(X_poly, y)
# 调整参数主要是控制多项式的复杂度,这里degree就是参数
# 如果你想进一步提高多项式的复杂度,只需增大degree值即可
# 示例中的degree已经是2,如果想提升到更高次,如三次多项式,就设置degree=3
# 但要注意过拟合的问题,随着多项式的阶数增加,模型可能会过于复杂,适应噪声。
```
阅读全文