python - 使用 sklearn LinearRegression 时有没有办法约束预测值?
问题描述
我正在使用 sklearn 线性回归来预测变量的百分比值。目前,预测输出给出低于 0% 和高于 100% 的值。有没有办法将这些值限制在 0 到 100 之间?我看到另一篇文章建议对分类变量使用多重逻辑回归,但这在这里没有用,因为百分比值是连续的。
此外,这是一个可以接受的约束吗?例如,所有低于 0 和高于 100 的预测值是否会分别设置为 0 和 100,在这种情况下,R 平方统计数据会发生变化,或者应用约束保持统计数据相同而丢弃任何超出范围的点?
我目前的代码是:
from sklearn.linear_model import LinearRegression
model = LinearRegression(fit_intercept=True)
x = df.loc[:,np.concatenate((["independent var 1","independent var 2"],categorical variable))]
y = df.dependent_%_var
# fit the model to the data
model.fit(x, y)
# and plotting what this relationship looks like
visualizer = ResidualsPlot(model)
visualizer.fit(x, y) # Fit the training data to the model
visualizer.poof()
解决方案
推荐阅读
- oracle - 如果满足 COUNT 条件,我可以应用 WHERE 子句吗?
- macos - NASM 程序不打印常量整数 (macOS)
- r - 如何在 R igraph 中为特定边缘着色?
- powershell - 无法使用 Invoke-RestMethod 更新工作项历史记录
- python - 为什么我的函数没有在 python 中执行?
- java - 为什么 JUnit 不执行整个方法?
- java - Java 集合和集合接口设计问题?
- html - 可能使用标签在锚点启动浏览器
- angular - 如果在 Angular 网站和 Identity Server 4 中使用哈希,则登录不起作用
- discord - Discord.js 错误:找不到模块“./token.json”