python - 具有多项式特征的线性回归
问题描述
我已经为数据集混凝土抗压强度建立了这个模型。
X_train_new, X_test_new, Y_train_new, Y_test_new = train_test_split(new_X, Y, test_size=0.3, shuffle='False')
new_X = pd.concat((X**(i+1) for i in range(n)), axis=1)
colnames=[]
for j in range(8*n):
colnames.append(j)
new_X.columns = colnames
X_train_new_scaled = scaler.fit_transform(X_train_new)
X_test_new_scaled = scaler.transform(X_test_new)
ols.fit(X_train_new_scaled, Y_train)
poly_train_pred = ols.predict(X_train_new_scaled)
poly_test_pred = ols.predict(X_test_new_scaled)
poly_mae_train_error = metrics.mean_absolute_error(Y_train_new, poly_train_pred)
poly_mae_test_error = metrics.mean_absolute_error(Y_test_new, poly_test_pred)
print(poly_mae_train_error, "\n", poly_mae_test_error)```
8是特征的数量。ols 是我之前创建的 LinearRegression 类。
test_error
这个模型的 比简单线性模型的高可以吗?另外,我如何实现该功能test_poly_regression(X_train, y_train, X_test, y_test, n=2)
来为多个 n 运行此模型并检查错误?
解决方案
推荐阅读
- android - Youtube iframe 视频在 react-native webview 中不起作用
- vim - MacVim 8.0 现在可用——你有 8.1.72
- sql-server - 在 SQL 连接字符串中动态存储和更改 TCP 端口
- java - 报告在后端很好,但在使用 ajax 从 Spring Boot 下载时收到空
- java - 引起:com.android.builder.dexing.DexArchiveBuilderException:处理失败
- java - 使用 Java 将文本文件中的内容读入 ArrayList
- matlab - 在两段中绘制抛物线
- android - 依赖图在 Koin 或 Kodein 中如何工作?
- javascript - “”之后的无效 CSS:预期 1 个选择器或规则,Vue Js
- javascript - 如何像 PHP 一样在 javascript 中进行舍入