回归分析加不加常数项_sklearn做线性回归的时候,如何让回归模型不包含常数项?...
#导入库
import pandas as pd
import numpy as np
#模拟一些数据
data=pd.DataFrame(np.random.randn(10,3),columns=["y","x1","x2"])
#导入线性回归类
from sklearn.linear_model import LinearRegression
#开始建模估计回归系数
#实例化一个回归模型
regmodel = LinearRegression()
#给模型传入测试集数据x和y
regmodel.fit(data.loc[:,["x1","x2"]],data["y"])#线性回归训练
regmodel.intercept_ #常数项
regmodel.coef_ #斜率系数
#计算模型的可决系数
regmodel.score(data.loc[:,["x1","x2"]],data["y"])
#通过help(regmodel.score)可以看到这个方法返回的是回归方程的可决系数
#如果想估计不带常数项的回归方程该怎么办呢?
#在实例化模型的时候设定fit_intercept参数值为False就可以,具体代码如下
regmodel = LinearRegression(fit_intercept=False)
regmodel.fit(data.loc[:,["x1","x2"]],data["y"])#线性回归训练
regmodel.intercept_ #结果为0
regmodel.coef_ #斜率系数
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
