本文共 1550 字,大约阅读时间需要 5 分钟。
本例使用波士顿房价数据
from sklearn.datasets import load_bostonfrom sklearn.linear_model import LinearRegressionfrom sklearn.model_selection import train_test_splitimport pandas as pdimport numpy as np'''load_boston 波士顿房价数据导入'''Boston=load_boston()print(type(Boston)) #相当于 npz文件,保存npzx=Boston['data'] #数据特征值y=Boston['target'] #标签names=Boston['feature_names'] #特征名称# print(names)#--------------------------与算法无关----------------------------------#将数据存储起来,这里是拓展,与本算法无关# df=pd.DataFrame(x,columns=names,index=range(len(y)))# pf=pd.DataFrame(y,columns=['label'],index=range(len(y)))# data=pd.concat([df,pf],axis=1) # data.to_excel('boston.xls') #保存进Excel# print(data)#------------------------------------------------------------#分割测试集和训练集#x与y中各划分出train与test,test占0.2即20%,train占0.8即80% 返回四个值x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.2) #拿出x于y的80%训练构建回归模型clfclf=LinearRegression().fit(x_train,y_train)print('截距',clf.intercept_)print('回归系数\n',clf.coef_)#预测#利用回归模型clf对x的20%的数据进行预测得y_pred,与真实值y_test进行对比y_pred=clf.predict(x_test) #使用模型预测y值result=np.concatenate((y_pred.reshape(-1,1), y_test.reshape(-1,1)), axis=1) #-1根据另一个值,计算行或列的数量 自动匹配print(result)
(1)
'''load_boston 波士顿房价数据导入'''
Boston=load_boston() print(type(Boston)) #相当于 npz文件,保存npz x=Boston['data'] #数据特征值 y=Boston['target'] #标签 names=Boston['feature_names'] #特征名称 # print(names)(2)
df=pd.DataFrame(x,columns=names,index=range(len(y)))
print(df)
(3)
pf=pd.DataFrame(y,columns=['label'],index=range(len(y)))
print(pf)
(4)
data=pd.concat([df,pf],axis=1)
print(data)
转载地址:http://fcwsi.baihongyu.com/