我正在尝试应用PenalizedLDA,将数据分为5类。数据如下:
a b c d e f
0 0 1 0 0 0
1 0 0 0 1 0
1 0 0 0 0 0
0 0 0 1 0 1
0 1 0 0 1 1
0 1 1 0 0 0
我收到错误消息“某些要素的类内标准偏差等于零”。我想这是因为,对于某些类,即使某些特征对于整个数据集而言是非恒定的,它们也是恒定的。但是,我无法删除SD = 0的所有这些功能,因为否则,我将丢失约70%的有用信息。
我尝试从初始数据集中删除第1类和第2类,并排除了零SD功能,但是又出现了另一个错误 “ PenalizedLDA.cv(x.train,y.train,type =“ ordered”,lambdas = c(1e-04,的错误: y必须是数值向量,其值如下:1、2 ....“
我的代码如下:
`x <- model.matrix(df$Sr~., data=df[,-1])[,-1]
y <- df$Sr
set.seed(1)
cv.out <- PenalizedLDA.cv(x,y,type="ordered",lambdas=c(1e-4,1e-
3,1e-2,.1,1,11),lambda2=.3)
print(cv.out)
plot(cv.out)`
请问您有什么想法我做错了吗?