【数据挖掘】回归分析学习

1 篇文章 0 订阅
1 篇文章 0 订阅

 一、导入库

from sklearn.linear_model import LinearRegression
#from sklearn.model_selection import train_test_split_test_split
from sklearn.model_selection import train_test_split
from sklearn.datasets import fetch_california_housing
import pandas as pd

本实训使用加利福尼亚的 房屋价值数据

linear_model.LinearRegression 线性回归

linear_model.LogisticRegression 逻辑回归分类器

linear_model.Ridge 岭回归 增加L2正则化项的线性回归

linear_model.Lasso 拉索回归 增加L1正则化项的线性回归

二、数据查看

housevalue = fetch_california_housing()
X = pd.DataFrame(housevalue.data)
print(X.shape)
print(X.head())
X.columns = housevalue.feature_names #设置列名

Xtrain,Xtest,Ytrain,Ytest=train_test_split(housevalue.data,housevalue.target,test_size=0.25,random_state=None) #划分数据集

a=clf_reg.coef_
#回归系数

#截距项
b=clf_reg.intercept_

三、使用metrics计算相关指数

from sklearn import metrics
mse = metrics.mean_squared_error(Ytest,Ypred)
print(mse)
r2 = metrics.r2_score(Ytest,Ypred)
#利用metrics
#r2
#rr2 = clf_reg.score(Xtest,Ytest)
#rr2 两种方法
mae = metrics.mean_absolute_error(Ytest,Ypred) #MAE 
'''
决定系数(coefficient ofdetermination),有的教材上翻译为判定系数,也称为拟合优度。

决定系数反应了y的波动有多少百分比能被x的波动所描述,即表征依变数Y的变异中有多少百分比,可由控制的自变数X来解释.
'''

四、绘制学习曲线

import matplotlib.pyplot as plt 
plt.plot(range(len(Ytest)),sorted(Ytest),c="blue",label="Data")
plt.plot(range(len(Ypred)),sorted(Ypred),c="red",label="predict")

plt.legend()
plt.show()

(仅供参考)

 可以通过下面方法查看索引值 在计算分数的时候我感觉挺好用 有的时候看图不好看出来

print(np.argmax(test_score_list)+1) # argmax找出最大值的索引值
#现在这里放着吧 方法就是这样

将特征名feature_name 和 回归系数放在表格里查看 我这里写了两种方法

import itertools
#aa = housevalue.feature_names
#bb = clf_reg.coef_
#cc= list(itertools.permutations(aa,bb)
aa=list(housevalue.feature_names)
bb=list(clf_reg.coef_)
list1=dict(zip(aa,bb))
print(aa)
print(bb)
print(list1)

a=list(list1.items())
a=sorted(a,key=lambda x:x[1],reverse=True)
b=pd.DataFrame(a,columns=['feature_names','回归系数'])
#b

如图 仅供参考 

还有利用np_c[]

import numpy as np
c_ = np.c_[aa, bb]
#c_
data2=pd.DataFrame(c_,columns=['feature_names','回归系数'])
#data2

 五、其他

 此处参考自深度研究:回归模型评价指标R2_score_机器学习算法与Python实战的博客-CSDN博客

 回归平方和:SSR       残差平方和:SSE          总离差平方和:SST

 

决定系数sklearn.metrics.r2_score到底是什么?_→★佐佑思维★←-CSDN博客

系数参考可以看这个

然后来说  clf_reg.score()

输入的内容为Xtest和Ytest

是由Xtest利用回归函数计算出Ypred,后Ytest与Ypred计算R²。

以上便是实训与我的理解,恳请各位多加批评!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值