多元多项式回归 python
时间: 2023-08-31 21:04:48 浏览: 219
多元多项式回归(Multivariate Polynomial Regression)是一种在多个自变量之间建立非线性关系的回归分析方法。在Python中,可以使用Scikit-learn库来实现多元多项式回归。
下面是一个示例代码,演示了如何使用Scikit-learn进行多元多项式回归:
```python
import numpy as np
from sklearn.preprocessing import PolynomialFeatures
from sklearn.linear_model import LinearRegression
# 假设我们有三个自变量 x1, x2, x3 和一个因变量 y 的数据集
x = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
y = np.array([10, 11, 12])
# 创建多元多项式特征矩阵
poly = PolynomialFeatures(degree=2) # 设置多项式的阶数
x_poly = poly.fit_transform(x)
# 应用线性回归模型拟合数据
model = LinearRegression()
model.fit(x_poly, y)
# 进行预测
x_test = np.array([[2, 3, 4]])
x_test_poly = poly.transform(x_test)
y_pred = model.predict(x_test_poly)
print("预测值:", y_pred)
```
在上面的示例中,我们首先创建了一个包含三个自变量(x1、x2、x3)和一个因变量(y)的数据集。然后,我们使用PolynomialFeatures类将自变量转换为多元多项式特征矩阵。我们可以通过设置degree参数来指定多项式的阶数。
之后,我们使用LinearRegression类进行线性回归模型的拟合,其中的自变量是多元多项式特征矩阵(x_poly),因变量是y。
最后,我们使用训练好的模型进行预测。可以通过传入新的自变量数据(x_test)并使用PolynomialFeatures类将其转换为多元多项式特征矩阵,然后调用predict方法得到预测值。
注意:在实际应用中,可能需要根据具体情况调整多项式的阶数,以避免过拟合或欠拟合的问题。
阅读全文