CASI 1.1 一个回归的例子

  考虑一个肾功能相关的研究,数据点(xi, yi)取自n=157个健康的志愿者,xi表示第i个志愿者的年龄(age,以年为单位),yi是一个综合的测量值“tot”。由散点图可以看出肾功能随着年龄的增大是普遍下降的,这个下降的速率对于肾移植来说则是一个比较重要的问题。

  书中通过最小二乘法用线性模型拟合了数据点,下面我用python来写一下书中的最小二乘和画图的过程,点此下载数据

import numpy as np
import matplotlib.pyplot as plt
from sklearn import linear_model

kidney = np.loadtxt('D:/CASI/data/kidney.txt',delimiter=' ',skiprows=1)

model = linear_model.LinearRegression()
model.fit(X=kidney[:,0].reshape(-1,1), y=kidney[:,1].reshape(-1,1))
y_plot = model.predict(kidney[:,0].reshape(-1,1))

plt.rc('font', size=6)
plt.rc('figure', figsize=(4,3), dpi=200)

plt.scatter(x=kidney[:,0], y=kidney[:,1],s=6,marker='*',alpha=0.6)  # 画出散点图
plt.plot(kidney[:,0], y_plot, color='green')  # 画出拟合直线
plt.xlabel('age')
plt.ylabel('tot')
plt.show()
Figure_1.jpeg
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容