一元线性回归模型:y=a+bx+ε
import pandas as pd import matplotlib.pyplot as plt import seaborn as sns f = open(r'C:\Users\active\Music\Desktop\Python\第7章 线性回归模型\第7章 线性回归模型\第七章 线性回归模型\Salary_Data.csv', encoding='UTF-8') income = pd.read_csv(f) sns.lmplot(x='YearsExperience',y='Salary',data=income,ci=None) plt.show()
如何得到这条拟合线数学表达式?
运用statsmodels,用于统计建模的第三方模块,如需实现线性回归模型的参数求解,可以调用子模块中的ols函数。有关该函数的语法及参数含义如下
formula:以字符串的形式指定线性回归模型的公式,如‘y~x’就表示简单线性回归模型。
data:指定建模的数据集。
subset:通过bool类型数组对象,获取data的子集用于建模。
drop_cols:指定需要从data中删除的变量。
import statsmodels.api as sm fit = sm.formula.ols('Salary~YearsExperience',data=income).fit() print(fit.params) OUT:Intercept 25792.200199 YearsExperience 9449.962321 dtype: float64