R的LDA中多类的Fisher分类函数系数

时间:2013-12-04 10:16:37

标签: r classification lda

我对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中的上述相同的输出,请帮帮我:

2 个答案:

答案 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()函数的结果中。