机器学习-用线性回归拟合缺失值

我们在做计量经济学时,或者在做数据分析时,总是遇到个别个体的数据缺失,我的案例是关于年份与所对应的变量关系

做法:

1.将年份2010-2018分别设为[1,2,3,~~~,8],作为x,缺失的变量作为y

2.将用python来拟合(预测)缺失的那年数据。下面例子是缺失了2010年的数据,在year中,是没有1的。


# 读取或者输出数据
data = pd.DataFrame({'year':[2,3,4,5,6,7,8,9],'y':[1.874018063,
2.208148996,
2.602163989,
2.885194853,
2.839985094,
2.879936428,
3.232097044,
3.675257165,
]})
print(data)

# 数据处理
x=np.array(data['year']).reshape((8,1))

y=np.array(data['y']).reshape((8,1))

# 建立线性模型
model = linear_model.LinearRegression()
model.fit(x,y)

# 模型效果
coef=model.coef_ #获取自变量系数

model_intercept=model.intercept_#获取截距

R2=model.score(x,y) #R的平方

print('线性回归方程为:','\n','y=’{}*x+{}'.format(coef,model_intercept))


# 插入的值
new_x = np.array((1)).reshape((1,1))
print(new_x)
y_pre = model.predict(new_x)
print(y_pre)

y_pre的值就是关于2010年对应的预测,也就是我们要插入的值。

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wency(王斯-CUEB)

我不是要饭的

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值