我试图将RDA应用于我在R中的数据,在一些研究之后,我发现在R中有一个叫做"rda“的包,它似乎可以为我完成这项工作。但是,我看了那个包中RDA函数的描述,现在我有点困惑了:
R中的用法:
rda(x, y, xnew=NULL, ynew=NULL, prior=table(y)/length(y),alpha=seq(0, 0.99, len=10), delta=seq(0, 3, len=10), regularization="S", genelist=FALSE, trace=FALSE)我不知道在这种情况下"alpha“和"delta”代表什么。在RDA中,有两个参数" lambda“和" sigma ",其中lambda是一个复杂的参数,它指示线性和二次判别分析之间的平衡,σ是进一步调整协方差矩阵的另一个参数。两者都在0到1之间。
但是对于R中的"rda“函数,δ的默认值介于0到3之间,这使我感到困惑。
有人能帮我解释一下吗?谢谢!
发布于 2014-01-02 05:45:05
您可以使用包klaR,它有一个函数rda,其正则化参数的参数化与您描述的参数类似。
detach(package:rda)
require(klaR)
data(iris)
x <- rda(Species ~ ., data = iris, gamma = 0.05, lambda = 0.2)
predict(x, iris)混合这两个包(某些函数的名称空间问题)并不是一个好主意,如果您想使用rda (或者相反),最好分离klaR。
https://stackoverflow.com/questions/20876067
复制相似问题