散点图合并拟合线的画法

sns画法

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

income = pd.read_csv('Salary_Data.csv')
income.dtypes
sns.lmplot(x= 'YearsExperience',y='Salary', data = income, ci=None)

image.png

plt画法(+statsmodels)

#绘制散点图
plt.scatter(x=income.YearsExperience,y=income.Salary,color="blue")
#导入统计建模模块
import statsmodels.api as sm
#构建一元线性回归模型
fit=sm.formula.ols("Salary~YearsExperience",data=income).fit()
#预测
pred=fit.predict(exog=income.YearsExperience)
#绘制回归线
plt.plot(income.YearsExperience,pred,color="coral",linewidth=1)
plt.show()

image.png

plt画法(+sklearn)

from sklearn.linear_model import LinearRegression
import numpy as np

X = np.array(income.YearsExperience).reshape(-1,1)
y = income.Salary
# print(X.shape)
# print(y.shape)

lr = LinearRegression()
lr.fit(X,y)

predict = lr.predict(X)

plt.scatter(X, y, c='b', s=60)
plt.plot(X,predict,color="coral",linewidth=1)

image.png

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权,转载请注明出处。
文章名称:《散点图合并拟合线的画法》
文章来自:泰恩数据
文章链接:https://tyne.cc/861.html
本站资源仅供个人学习使用,请勿用于商业用途。

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址