1.通过构造一个一阶惩罚函数获得一个精炼的模型;通过最终确定一些指标(变量)的系数为零(岭回归估计系数等于0的机会微乎其微,
造成筛选变量困难),解释里很强
2.擅长处理具有多重共线性的数据,与岭回归一样是有偏估值.
import numpy as np
from numpy import genfromtxt
from sklearn import linear_model
# 读取数据
data = genfromtxt(r'data.csv',delimiter= ',')
print(data)
# 切分数据
x_data = data[1:,2:]
y_data = data[1:,1]
print(x_data)
print(y_data)
# 创建模型
model = linear_model.lassoCV()
model.fit(x_data,y_data)
# lasso 系数
print(model.alpha_)
# 相关系数
print(model.coef_)
model.predict(x_data[-2,np.newaxis]) # 预测
sklearn 弹性网计算
import numpy as np
from numpy import genfromtxt
from sklearn import linear_model
# 读取数据
data = genfromtxt(r'data.csv',delimiter= ',')
print(data)
# 切分数据
x_data = data[1:,2:]
y_data = data[1:,1]
print(x_data)
print(y_data)
# 创建模型
model = linear_model.ElasticNetCV()
model.fit(x_data,y_data)