# 创建一个学生信息集,属性列ID、Weight和Height
import pandas as pd
import numpy as np
# 学生数据集
sInfo = pd.DataFrame({"ID":["001","002","003","004","005","006","007"],
"Weight":['60','70','55','57','80','78','90'],
"Height":[np.nan, '175', '180', '167', np.nan,'169','185']})
print(sInfo)
# 删除缺失值行
sInfonew = sInfo.dropna(axis=0,how="any")
print(sInfonew)
# 建立回归模型做数据填充
from sklearn.linear_model import LinearRegression # 线性回归模型
"""
fit_intercept=True/False 默认情况下 True
fit_intercept=True代表考虑截距;fit_intercept=False代表不考虑截距
normalize=Ture/False 默认情况下 False
normalize=False 在数据回归之前不进行归一化处理;normalize=True 在数据回归之前进行归一化处理
copy_X=True/False 默认情况下 True
copy_X=True代表自变量可以被copy,否则将被重写
"""
model = LinearRegression(copy_X=True, fit_intercept=True, normalize=False)
model.fit(sInfonew["Weight"].values.reshape(-1,1), sInfonew["Height"].values.reshape(-1,1)) # 模型训练
# 假设已知体重55kg,身高未知
result = model.predict([[55]])
print(result)
result2 = model.predict([[60]])
print(result2)
缺失值处理 回归填充
最新推荐文章于 2023-01-24 13:04:39 发布