[英]How is the scikit Lasso/LARS used as a regressive feature selection tool?
我有大约22个数据预测变量x_i,我想减少到一定数量以便最好地描述y。 基本问题...但是,我还不清楚如何使用scikit和linearmodel.lassoLars来执行此任务。
从他们的示例文档中,代码就像:
alpha = 0.1
lasso = Lasso(alpha=alpha)
y_pred_lasso = lasso.fit(X_train, y_train).predict(X_test)
因此它执行回归和套索,但是我不确定如何使用y_pred_lasso来输出我想要的东西,即来自22个最能准确描述y_train的原始预测变量的变量。
调用fit
,可以使用Lasso
实例的coef_
属性访问选定的coef_
。 此属性存储每个要素的权重。
>>> lasso = Lasso(alpha=alpha).fit(X_train, y_train)
>>> lasso.coef_ != 0
array([ True, True, True, False, False, True, True, True, True,
True, True, True, True], dtype=bool)
>>> import numpy as np
>>> np.nonzero(lasso.coef_)
(array([ 0, 1, 2, 5, 6, 7, 8, 9, 10, 11, 12]),)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.