В чем разница между функциями lda () и linDA () в R? - PullRequest
1 голос
/ 19 апреля 2019

Поэтому я пытаюсь понять разницу между lda и linDA из пакета DiscriMiner.Оба претендуют на проведение линейного дискриминантного анализа.Моя цель - извлечь из lda некоторый аналог объекта $ functions, которым обладает linDA.

Проблема в том, что linDA не работает, когда в одной категории есть коллинеарные переменные, в то время как lda выполняет с предупреждением.

library(DiscriMiner)
library(MASS)
stack_df = data.frame(a = c(4.4, 5.4, 4.1, 4.3, 4.6, 9.2, 9.7, 10, 11, 16, 16, 17),
                      b = c(100, 111, 99, 104, 107, 55, 61, 54, 60, 333, 341, 299))
clusters <- c(1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3)
result_lda <- lda(x = stack_df, grouping = clusters)
result_linDA <- linDA(variables = stack_df, group = clusters)
result_linDA$functions

Как мне получить вывод от lda:

                  1            2           3
constant -89.811195 -170.4324589 -975.199938
a         15.892524   29.3741508   55.378398
b          1.011531    0.7940963    3.216177

Вот как выглядит result_lda:

Call:
lda(stack_df, grouping = clusters)

Prior probabilities of groups:
        1         2         3 
0.4166667 0.3333333 0.2500000 

Group means:
         a        b
1  4.56000 104.2000
2  9.97500  57.5000
3 16.33333 324.3333

Coefficients of linear discriminants:
         LD1         LD2
a 1.16933652 -1.18114662
b 0.07679703  0.04925105

Proportion of trace:
   LD1    LD2 
0.9207 0.0793 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...