运行glinternet时出错:Stanford'的一个使用交互项自动选择模型的统计函数;黑斯蒂教授
glinternet是一个R包和一个函数,它实现了由著名的斯坦福统计学习教授特雷弗·黑斯蒂(Trevor Hastie)和他的前博士生开发的算法运行glinternet时出错:Stanford'的一个使用交互项自动选择模型的统计函数;黑斯蒂教授,r,classification,logistic-regression,glmnet,R,Classification,Logistic Regression,Glmnet,glinternet是一个R包和一个函数,它实现了由著名的斯坦福统计学习教授特雷弗·黑斯蒂(Trevor Hastie)和他的前博士生开发的算法glinternet()自动检测交互项,因此,在具有许多变量的情况下,在可能的组合非常庞大的情况下,它在构建模型时非常有用 当我运行glinternet时,我得到一条错误消息,我在这里使用mtcarsbase R数据集重现该消息: data(mtcars) setDT(mtcars) glimpse(mtcars) x = as.matrix(mtcar
glinternet()
自动检测交互项,因此,在具有许多变量的情况下,在可能的组合非常庞大的情况下,它在构建模型时非常有用
当我运行glinternet
时,我得到一条错误消息,我在这里使用mtcars
base R数据集重现该消息:
data(mtcars)
setDT(mtcars)
glimpse(mtcars)
x = as.matrix(mtcars[, -c("am"), with = FALSE])
class(x)
y <- mtcars$am
class(y)
glinter_fit <- glinternet(x , y, numLevels = 2)
Error: pCat + pCont == ncol(X) is not TRUE
数据(mtcars)
setDT(mtcars)
一瞥(mtcars)
x=as.矩阵(mtcars[,-c(“am”),带=FALSE])
类别(x)
y这不是很清楚,但是您需要提供一个向量,该向量与预测列的数量一样长,每个元素表示每个列的类别数
在您的示例中,在x
中,它都是连续的,因此我们:
glinternet(x,y,numLevels=rep(1,ncol(x)))
Call: glinternet(X = x, Y = y, numLevels = rep(1, ncol(x)))
lambda objValue cat cont catcat contcont catcont
1 0.068900 0.1210 0 0 0 0 0
2 0.062800 0.1200 0 1 0 0 0
3 0.057100 0.1180 0 1 0 0 0
4 0.052000 0.1160 0 1 0 0 0
5 0.047300 0.1130 0 2 0 0 0
6 0.043100 0.1100 0 2 0 0 0
7 0.039200 0.1060 0 3 0 0 0
8 0.035700 0.1020 0 3 0 0 0
9 0.032500 0.0983 0 3 0 0 0
10 0.029600 0.0944 0 3 0 0 0
11 0.026900 0.0904 0 3 0 0 0
12 0.024500 0.0866 0 3 0 0 0
13 0.022300 0.0829 0 3 0 0 0
14 0.020300 0.0794 0 3 0 0 0
15 0.018500 0.0760 0 3 0 0 0
16 0.016800 0.0728 0 3 0 1 0
17 0.015300 0.0698 0 4 0 1 0
18 0.014000 0.0668 0 4 0 1 0
19 0.012700 0.0638 0 4 0 2 0
20 0.011600 0.0608 0 4 0 2 0
21 0.010500 0.0579 0 3 0 2 0
22 0.009580 0.0551 0 3 0 2 0
23 0.008720 0.0523 0 3 0 2 0
24 0.007940 0.0497 0 3 0 2 0
25 0.007230 0.0472 0 3 0 3 0
26 0.006580 0.0448 0 5 0 3 0
27 0.005990 0.0425 0 5 0 3 0
28 0.005450 0.0403 0 5 0 3 0
29 0.004960 0.0382 0 5 0 3 0
30 0.004520 0.0361 0 4 0 3 0
31 0.004110 0.0342 0 4 0 3 0
32 0.003740 0.0324 0 4 0 4 0
33 0.003410 0.0307 0 4 0 5 0
34 0.003100 0.0291 0 4 0 6 0
35 0.002820 0.0275 0 3 0 6 0
36 0.002570 0.0261 0 3 0 6 0
37 0.002340 0.0247 0 3 0 8 0
38 0.002130 0.0234 0 3 0 7 0
39 0.001940 0.0221 0 3 0 7 0
40 0.001760 0.0210 0 3 0 7 0
41 0.001610 0.0199 0 3 0 8 0
42 0.001460 0.0188 0 3 0 8 0
43 0.001330 0.0178 0 4 0 10 0
44 0.001210 0.0168 0 4 0 10 0
45 0.001100 0.0159 0 4 0 12 0
46 0.001000 0.0149 0 4 0 12 0
47 0.000914 0.0140 0 4 0 12 0
48 0.000832 0.0132 0 4 0 12 0
49 0.000757 0.0123 0 3 0 13 0
50 0.000689 0.0115 0 2 0 13 0
glinternet
的帮助说明numLevels
是“每个变量的级别数,长度nVAR。对于连续变量设置为1”。因此,它应该是一个包含10个整数的向量,给出了x
@eipi10中10列中每列的级别数,这在文档和阅读代码中都不是很清楚,尽管仔细阅读并牢记您的解释,glinternet
现在正在快速发展。代码开始看起来像模糊检查,然后转到连续或分类赋值,向量用于进行拆分,因此所有内容都有意义。谢谢