我对R中的LDA有一点疑问,就像在spss中我试图通过包MASS获得R中线性判别分析的渔民分类函数系数时,我得到的线性判别系数如下:< / p>
线性判别式的系数:
LD1 LD2 LD3 LD4
Var1 0.018952518 0.010766163 0.534278507 -2.32E-02
Var2 -0.000827315 -0.012934214 -0.013986988 -3.14E-01
Var3 -3.616088667 -0.18684861 -2.962979702 1.36E-01
Var4 0.000139365 -0.003802969 0.000313853 9.33E-05
Var5 0.007675119 0.006891405 0.05536683 -9.69E-02
LD5
Var1 5.64E-02
Var2 6.04E-02
Var3 -3.69E-01
Var4 -3.40E-05
Var5 -4.92E-01
但是我的分组变量中有7个组,我需要为所有五个变量的每个簇获取渔民分类函数系数,以便我可以在Excel中使用它们进行进一步分析。我打算在下面添加类似的表:< / p>
分类函数系数
Cluster
7 8 9 10 11 12 13
Var1 .630 .580 .555 .571 .598 .714 .642
Var2 .025 .028 .028 .029 .026 .029 .029
Var3 .685 .684 .752 .681 .678 .695 .700
Var4 1.019 .997 1.015 .998 1.023 1.033 1.033
Var5 17.331 21.253 21.457 21.347 9.166 8.850 8.860
(Constant)-44.687 -57.762 -59.353-58.928 -36.337 -42.367 -42.744
所以我想要像R中的上述相同的输出,请帮帮我:
答案 0 :(得分:4)
您可以修改Fiete建议的代码,也可以使用linDA
包中的DiscriMine
;
library(DiscriMiner)
mylda = linDA(iris[,1:4], iris[,5])
summary(mylda)
mylda$functions
setosa versicolor virginica
constant -86.30847 -72.852607 -104.36832
Sepal.Length 23.54417 15.698209 12.44585
Sepal.Width 23.58787 7.072510 3.68528
Petal.Length -16.43064 5.211451 12.76654
Petal.Width -17.39841 6.434229 21.07911
答案 1 :(得分:1)
如果我理解你的问题,这可能是你问题的解决方案:
Classification functions in linear discriminant analysis in R
该帖子提供了一个脚本,该脚本根据判别函数生成分类函数系数,并将它们作为单独的表格添加到lda()
函数的结果中。