Dapatkah nilai penskalaan dalam analisis diskriminan linier (LDA) digunakan untuk memplot variabel penjelas pada diskriminan linier?

11

Menggunakan biplot nilai yang diperoleh melalui analisis komponen utama, dimungkinkan untuk mengeksplorasi variabel penjelas yang membentuk setiap komponen utama. Apakah ini juga mungkin dengan Analisis Diskriminan Linier?

Contoh yang diberikan menggunakan data adalah "Data Iris Edgar Anderson" ( http://en.wikipedia.org/wiki/Iris_flower_data_set ). Berikut adalah data irisnya :

  id  SLength   SWidth  PLength   PWidth species 

   1      5.1      3.5      1.4       .2 setosa 
   2      4.9      3.0      1.4       .2 setosa 
   3      4.7      3.2      1.3       .2 setosa 
   4      4.6      3.1      1.5       .2 setosa 
   5      5.0      3.6      1.4       .2 setosa 
   6      5.4      3.9      1.7       .4 setosa 
   7      4.6      3.4      1.4       .3 setosa 
   8      5.0      3.4      1.5       .2 setosa 
   9      4.4      2.9      1.4       .2 setosa 
  10      4.9      3.1      1.5       .1 setosa 
  11      5.4      3.7      1.5       .2 setosa 
  12      4.8      3.4      1.6       .2 setosa 
  13      4.8      3.0      1.4       .1 setosa 
  14      4.3      3.0      1.1       .1 setosa 
  15      5.8      4.0      1.2       .2 setosa 
  16      5.7      4.4      1.5       .4 setosa 
  17      5.4      3.9      1.3       .4 setosa 
  18      5.1      3.5      1.4       .3 setosa 
  19      5.7      3.8      1.7       .3 setosa 
  20      5.1      3.8      1.5       .3 setosa 
  21      5.4      3.4      1.7       .2 setosa 
  22      5.1      3.7      1.5       .4 setosa 
  23      4.6      3.6      1.0       .2 setosa 
  24      5.1      3.3      1.7       .5 setosa 
  25      4.8      3.4      1.9       .2 setosa 
  26      5.0      3.0      1.6       .2 setosa 
  27      5.0      3.4      1.6       .4 setosa 
  28      5.2      3.5      1.5       .2 setosa 
  29      5.2      3.4      1.4       .2 setosa 
  30      4.7      3.2      1.6       .2 setosa 
  31      4.8      3.1      1.6       .2 setosa 
  32      5.4      3.4      1.5       .4 setosa 
  33      5.2      4.1      1.5       .1 setosa 
  34      5.5      4.2      1.4       .2 setosa 
  35      4.9      3.1      1.5       .2 setosa 
  36      5.0      3.2      1.2       .2 setosa 
  37      5.5      3.5      1.3       .2 setosa 
  38      4.9      3.6      1.4       .1 setosa 
  39      4.4      3.0      1.3       .2 setosa 
  40      5.1      3.4      1.5       .2 setosa 
  41      5.0      3.5      1.3       .3 setosa 
  42      4.5      2.3      1.3       .3 setosa 
  43      4.4      3.2      1.3       .2 setosa 
  44      5.0      3.5      1.6       .6 setosa 
  45      5.1      3.8      1.9       .4 setosa 
  46      4.8      3.0      1.4       .3 setosa 
  47      5.1      3.8      1.6       .2 setosa 
  48      4.6      3.2      1.4       .2 setosa 
  49      5.3      3.7      1.5       .2 setosa 
  50      5.0      3.3      1.4       .2 setosa 
  51      7.0      3.2      4.7      1.4 versicolor 
  52      6.4      3.2      4.5      1.5 versicolor 
  53      6.9      3.1      4.9      1.5 versicolor 
  54      5.5      2.3      4.0      1.3 versicolor 
  55      6.5      2.8      4.6      1.5 versicolor 
  56      5.7      2.8      4.5      1.3 versicolor 
  57      6.3      3.3      4.7      1.6 versicolor 
  58      4.9      2.4      3.3      1.0 versicolor 
  59      6.6      2.9      4.6      1.3 versicolor 
  60      5.2      2.7      3.9      1.4 versicolor 
  61      5.0      2.0      3.5      1.0 versicolor 
  62      5.9      3.0      4.2      1.5 versicolor 
  63      6.0      2.2      4.0      1.0 versicolor 
  64      6.1      2.9      4.7      1.4 versicolor 
  65      5.6      2.9      3.6      1.3 versicolor 
  66      6.7      3.1      4.4      1.4 versicolor 
  67      5.6      3.0      4.5      1.5 versicolor 
  68      5.8      2.7      4.1      1.0 versicolor 
  69      6.2      2.2      4.5      1.5 versicolor 
  70      5.6      2.5      3.9      1.1 versicolor 
  71      5.9      3.2      4.8      1.8 versicolor 
  72      6.1      2.8      4.0      1.3 versicolor 
  73      6.3      2.5      4.9      1.5 versicolor 
  74      6.1      2.8      4.7      1.2 versicolor 
  75      6.4      2.9      4.3      1.3 versicolor 
  76      6.6      3.0      4.4      1.4 versicolor 
  77      6.8      2.8      4.8      1.4 versicolor 
  78      6.7      3.0      5.0      1.7 versicolor 
  79      6.0      2.9      4.5      1.5 versicolor 
  80      5.7      2.6      3.5      1.0 versicolor 
  81      5.5      2.4      3.8      1.1 versicolor 
  82      5.5      2.4      3.7      1.0 versicolor 
  83      5.8      2.7      3.9      1.2 versicolor 
  84      6.0      2.7      5.1      1.6 versicolor 
  85      5.4      3.0      4.5      1.5 versicolor 
  86      6.0      3.4      4.5      1.6 versicolor 
  87      6.7      3.1      4.7      1.5 versicolor 
  88      6.3      2.3      4.4      1.3 versicolor 
  89      5.6      3.0      4.1      1.3 versicolor 
  90      5.5      2.5      4.0      1.3 versicolor 
  91      5.5      2.6      4.4      1.2 versicolor 
  92      6.1      3.0      4.6      1.4 versicolor 
  93      5.8      2.6      4.0      1.2 versicolor 
  94      5.0      2.3      3.3      1.0 versicolor 
  95      5.6      2.7      4.2      1.3 versicolor 
  96      5.7      3.0      4.2      1.2 versicolor 
  97      5.7      2.9      4.2      1.3 versicolor 
  98      6.2      2.9      4.3      1.3 versicolor 
  99      5.1      2.5      3.0      1.1 versicolor 
 100      5.7      2.8      4.1      1.3 versicolor 
 101      6.3      3.3      6.0      2.5 virginica 
 102      5.8      2.7      5.1      1.9 virginica 
 103      7.1      3.0      5.9      2.1 virginica 
 104      6.3      2.9      5.6      1.8 virginica 
 105      6.5      3.0      5.8      2.2 virginica 
 106      7.6      3.0      6.6      2.1 virginica 
 107      4.9      2.5      4.5      1.7 virginica 
 108      7.3      2.9      6.3      1.8 virginica 
 109      6.7      2.5      5.8      1.8 virginica 
 110      7.2      3.6      6.1      2.5 virginica 
 111      6.5      3.2      5.1      2.0 virginica 
 112      6.4      2.7      5.3      1.9 virginica 
 113      6.8      3.0      5.5      2.1 virginica 
 114      5.7      2.5      5.0      2.0 virginica 
 115      5.8      2.8      5.1      2.4 virginica 
 116      6.4      3.2      5.3      2.3 virginica 
 117      6.5      3.0      5.5      1.8 virginica 
 118      7.7      3.8      6.7      2.2 virginica 
 119      7.7      2.6      6.9      2.3 virginica 
 120      6.0      2.2      5.0      1.5 virginica 
 121      6.9      3.2      5.7      2.3 virginica 
 122      5.6      2.8      4.9      2.0 virginica 
 123      7.7      2.8      6.7      2.0 virginica 
 124      6.3      2.7      4.9      1.8 virginica 
 125      6.7      3.3      5.7      2.1 virginica 
 126      7.2      3.2      6.0      1.8 virginica 
 127      6.2      2.8      4.8      1.8 virginica 
 128      6.1      3.0      4.9      1.8 virginica 
 129      6.4      2.8      5.6      2.1 virginica 
 130      7.2      3.0      5.8      1.6 virginica 
 131      7.4      2.8      6.1      1.9 virginica 
 132      7.9      3.8      6.4      2.0 virginica 
 133      6.4      2.8      5.6      2.2 virginica 
 134      6.3      2.8      5.1      1.5 virginica 
 135      6.1      2.6      5.6      1.4 virginica 
 136      7.7      3.0      6.1      2.3 virginica 
 137      6.3      3.4      5.6      2.4 virginica 
 138      6.4      3.1      5.5      1.8 virginica 
 139      6.0      3.0      4.8      1.8 virginica 
 140      6.9      3.1      5.4      2.1 virginica 
 141      6.7      3.1      5.6      2.4 virginica 
 142      6.9      3.1      5.1      2.3 virginica 
 143      5.8      2.7      5.1      1.9 virginica 
 144      6.8      3.2      5.9      2.3 virginica 
 145      6.7      3.3      5.7      2.5 virginica 
 146      6.7      3.0      5.2      2.3 virginica 
 147      6.3      2.5      5.0      1.9 virginica 
 148      6.5      3.0      5.2      2.0 virginica 
 149      6.2      3.4      5.4      2.3 virginica 
 150      5.9      3.0      5.1      1.8 virginica

Contoh biplot PCA menggunakan set data iris dalam R (kode di bawah):

masukkan deskripsi gambar di sini

Gambar ini menunjukkan bahwa panjang Petal dan lebar Petal penting dalam menentukan skor PC1 dan dalam membedakan antara kelompok Spesies. setosa memiliki kelopak yang lebih kecil dan sepal yang lebih luas.

Rupanya, kesimpulan yang sama dapat diambil dari memplot hasil analisis diskriminan linier, meskipun saya tidak yakin apa yang disajikan plot LDA, maka pertanyaannya. Sumbu adalah dua diskriminan linier pertama (LD1 99% dan LD2 1% dari jejak). Koordinat vektor merah adalah "Koefisien diskriminan linier" juga digambarkan sebagai "skala" (lda.fit $ scaling: matriks yang mengubah pengamatan menjadi fungsi diskriminan, dinormalisasi sehingga dalam kelompok, matriks kovarians berbentuk bola). "penskalaan" dihitung sebagai diag(1/f1, , p)dan f1 is sqrt(diag(var(x - group.means[g, ]))). Data dapat diproyeksikan ke diskriminan linier (menggunakan predict.lda) (kode di bawah ini, seperti yang ditunjukkan https://stackoverflow.com/a/17240647/742447). Data dan variabel prediktor diplot bersama sehingga spesies mana yang ditentukan oleh peningkatan di mana variabel prediktor dapat dilihat (seperti yang dilakukan untuk biplots PCA biasa dan biplot PCA di atas) .:

Contoh LDA biplot menggunakan set data iris di R

Dari plot ini, lebar Sepal, Lebar Petal, dan Panjang Petal semuanya berkontribusi ke level yang mirip dengan LD1. Seperti yang diharapkan, setosa tampak kelopak yang lebih kecil dan sepal yang lebih luas.

Tidak ada cara bawaan untuk memplot biplots dari LDA dalam R dan beberapa diskusi online ini, yang membuat saya waspada terhadap pendekatan ini.

Apakah plot LDA ini (lihat kode di bawah) memberikan interpretasi yang valid secara statistik dari skor skala variabel prediktor?

Kode untuk PCA:

require(grid)

  iris.pca <- prcomp(iris[,-5])
  PC <- iris.pca
  x="PC1"
  y="PC2"
  PCdata <- data.frame(obsnames=iris[,5], PC$x)

  datapc <- data.frame(varnames=rownames(PC$rotation), PC$rotation)
  mult <- min(
    (max(PCdata[,y]) - min(PCdata[,y])/(max(datapc[,y])-min(datapc[,y]))),
    (max(PCdata[,x]) - min(PCdata[,x])/(max(datapc[,x])-min(datapc[,x])))
  )
  datapc <- transform(datapc,
                      v1 = 1.6 * mult * (get(x)),
                      v2 = 1.6 * mult * (get(y))
  )

  datapc$length <- with(datapc, sqrt(v1^2+v2^2))
  datapc <- datapc[order(-datapc$length),]

  p <- qplot(data=data.frame(iris.pca$x),
             main="PCA",
             x=PC1,
             y=PC2,
             shape=iris$Species)
  #p <- p + stat_ellipse(aes(group=iris$Species))
  p <- p + geom_hline(aes(0), size=.2) + geom_vline(aes(0), size=.2)
  p <- p + geom_text(data=datapc, 
                     aes(x=v1, y=v2,
                         label=varnames,
                         shape=NULL,
                         linetype=NULL,
                         alpha=length), 
                     size = 3, vjust=0.5,
                     hjust=0, color="red")
  p <- p + geom_segment(data=datapc, 
                        aes(x=0, y=0, xend=v1,
                            yend=v2, shape=NULL, 
                            linetype=NULL,
                            alpha=length),
                        arrow=arrow(length=unit(0.2,"cm")),
                        alpha=0.5, color="red")
  p <- p + coord_flip()


  print(p)

Kode untuk LDA

#Perform LDA analysis
iris.lda <- lda(as.factor(Species)~.,
                 data=iris)

#Project data on linear discriminants
iris.lda.values <- predict(iris.lda, iris[,-5])

#Extract scaling for each predictor and
data.lda <- data.frame(varnames=rownames(coef(iris.lda)), coef(iris.lda))

#coef(iris.lda) is equivalent to iris.lda$scaling

data.lda$length <- with(data.lda, sqrt(LD1^2+LD2^2))
scale.para <- 0.75

#Plot the results
p <- qplot(data=data.frame(iris.lda.values$x),
           main="LDA",
           x=LD1,
           y=LD2,
           shape=iris$Species)#+stat_ellipse()
p <- p + geom_hline(aes(0), size=.2) + geom_vline(aes(0), size=.2)
p <- p + theme(legend.position="none")
p <- p + geom_text(data=data.lda,
                   aes(x=LD1*scale.para, y=LD2*scale.para,
                       label=varnames, 
                       shape=NULL, linetype=NULL,
                       alpha=length),
                   size = 3, vjust=0.5,
                   hjust=0, color="red")
p <- p + geom_segment(data=data.lda,
                      aes(x=0, y=0,
                          xend=LD1*scale.para, yend=LD2*scale.para,
                          shape=NULL, linetype=NULL,
                          alpha=length),
                      arrow=arrow(length=unit(0.2,"cm")),
                      color="red")
p <- p + coord_flip()

print(p)

Hasil LDA adalah sebagai berikut

lda(as.factor(Species) ~ ., data = iris)

Prior probabilities of groups:
    setosa versicolor  virginica 
 0.3333333  0.3333333  0.3333333 

Group means:
           Sepal.Length Sepal.Width Petal.Length Petal.Width
setosa            5.006       3.428        1.462       0.246
versicolor        5.936       2.770        4.260       1.326
virginica         6.588       2.974        5.552       2.026

Coefficients of linear discriminants:
                    LD1         LD2
Sepal.Length  0.8293776  0.02410215
Sepal.Width   1.5344731  2.16452123
Petal.Length -2.2012117 -0.93192121
Petal.Width  -2.8104603  2.83918785

Proportion of trace:
   LD1    LD2 
0.9912 0.0088
Etienne Low-Décarie
sumber
Saya tidak dapat mengikuti kode Anda (saya bukan pengguna R dan saya lebih suka melihat data aktual dan nilai hasil daripada gambar yang tidak dijelaskan dan kode yang tidak dijelaskan), maaf. Apa yang Anda plot plot? Apa koordinat vektor merah - bobot penyesalan laten atau variabel? Untuk apa Anda merencanakan juga data poins? Apa discriminant predictor variable scaling scores? - Istilah itu bagi saya tidak umum dan aneh.
ttnphns
@ttnphns: terima kasih telah menyarankan peningkatan pertanyaan yang sekarang tercermin dalam pertanyaan.
Etienne Low-Décarie
Saya masih tidak tahu apa itu predictor variable scaling scores. Mungkin "skor diskriminan"? Bagaimanapun, saya menambahkan jawaban yang mungkin menarik bagi Anda.
ttnphns

Jawaban:

7

Analisis komponen utama dan output analisis diskriminan linier ; data iris .

Saya tidak akan menggambar biplot karena biplot dapat digambar dengan berbagai normalisasi dan karenanya mungkin terlihat berbeda. Karena saya bukan Rpengguna, saya mengalami kesulitan untuk melacak bagaimana Anda menghasilkan plot Anda, untuk mengulanginya. Sebagai gantinya, saya akan melakukan PCA dan LDA dan menunjukkan hasilnya, dengan cara yang mirip dengan ini (Anda mungkin ingin membaca). Kedua analisis dilakukan dalam SPSS.

Komponen utama dari data iris :

The analysis will be based on covariances (not correlations) between the 4 variables.

Eigenvalues (component variances) and the proportion of overall variance explained
PC1   4.228241706    .924618723 
PC2    .242670748    .053066483 
PC3    .078209500    .017102610 
PC4    .023835093    .005212184 
# @Etienne's comment: 
# Eigenvalues are obtained in R by
# (princomp(iris[,-5])$sdev)^2 or (prcomp(iris[,-5])$sdev)^2.
# Proportion of variance explained is obtained in R by
# summary(princomp(iris[,-5])) or summary(prcomp(iris[,-5]))

Eigenvectors (cosines of rotation of variables into components)
              PC1           PC2           PC3           PC4
SLength   .3613865918   .6565887713  -.5820298513   .3154871929 
SWidth   -.0845225141   .7301614348   .5979108301  -.3197231037 
PLength   .8566706060  -.1733726628   .0762360758  -.4798389870 
PWidth    .3582891972  -.0754810199   .5458314320   .7536574253    
# @Etienne's comment: 
# This is obtained in R by
# prcomp(iris[,-5])$rotation or princomp(iris[,-5])$loadings

Loadings (eigenvectors normalized to respective eigenvalues;
loadings are the covariances between variables and standardized components)
              PC1           PC2           PC3           PC4
SLength    .743108002    .323446284   -.162770244    .048706863 
SWidth    -.173801015    .359689372    .167211512   -.049360829 
PLength   1.761545107   -.085406187    .021320152   -.074080509 
PWidth     .736738926   -.037183175    .152647008    .116354292    
# @Etienne's comment: 
# Loadings can be obtained in R with
# t(t(princomp(iris[,-5])$loadings) * princomp(iris[,-5])$sdev) or
# t(t(prcomp(iris[,-5])$rotation) * prcomp(iris[,-5])$sdev)

Standardized (rescaled) loadings
(loadings divided by st. deviations of the respective variables)
              PC1           PC2           PC3           PC4
SLength    .897401762     .390604412   -.196566721    .058820016
SWidth    -.398748472     .825228709    .383630296   -.113247642
PLength    .997873942    -.048380599    .012077365   -.041964868
PWidth     .966547516   -.048781602    .200261695    .152648309  

Raw component scores (Centered 4-variable data multiplied by eigenvectors)
     PC1           PC2           PC3           PC4
-2.684125626    .319397247   -.027914828    .002262437 
-2.714141687   -.177001225   -.210464272    .099026550 
-2.888990569   -.144949426    .017900256    .019968390 
-2.745342856   -.318298979    .031559374   -.075575817 
-2.728716537    .326754513    .090079241   -.061258593 
-2.280859633    .741330449    .168677658   -.024200858 
-2.820537751   -.089461385    .257892158   -.048143106 
-2.626144973    .163384960   -.021879318   -.045297871 
-2.886382732   -.578311754    .020759570   -.026744736 
-2.672755798   -.113774246   -.197632725   -.056295401 
... etc.
# @Etienne's comment: 
# This is obtained in R with
# prcomp(iris[,-5])$x or princomp(iris[,-5])$scores.
# Can also be eigenvector normalized for plotting

Standardized (to unit variances) component scores, when multiplied
by loadings return original centered variables.

Penting untuk ditekankan bahwa itu adalah pembebanan, bukan vektor eigen, yang dengannya kita biasanya menafsirkan komponen utama (atau faktor dalam analisis faktor) - jika kita perlu menafsirkannya. Memuat adalah koefisien penyesalan variabel pemodelan oleh komponen standar . Pada saat yang sama, karena komponen tidak saling berhubungan, mereka adalah kovarian antara komponen tersebut dan variabel. Pembebanan terstandarisasi (diskala ulang), seperti korelasi, tidak dapat melebihi 1, dan lebih mudah untuk ditafsirkan karena efek dari varians variabel yang tidak sama dihapus.

Ini adalah pemuatan, bukan vektor eigen, yang biasanya ditampilkan pada biplot berdampingan dengan skor komponen; yang terakhir sering ditampilkan kolom dinormalisasi.


Diskriminan linear dari data iris :

There is 3 classes and 4 variables: min(3-1,4)=2 discriminants can be extracted.
Only the extraction (no classification of data points) will be done.

Eigenvalues and canonical correlations
(Canonical correlation squared is SSbetween/SStotal of ANOVA by that discriminant)
Dis1    32.19192920     .98482089 
Dis2      .28539104     .47119702
# @Etienne's comment:
# In R eigenvalues are expected from
# lda(as.factor(Species)~.,data=iris)$svd, but this produces
#   Dis1       Dis2
# 48.642644  4.579983
# @ttnphns' comment:
# The difference might be due to different computational approach
# (e.g. me used eigendecomposition and R used svd?) and is of no importance.
# Canonical correlations though should be the same.

Eigenvectors (here, column-normalized to SS=1: cosines of rotation of variables into discriminants)
              Dis1          Dis2
SLength  -.2087418215   .0065319640 
SWidth   -.3862036868   .5866105531 
PLength   .5540117156  -.2525615400 
PWidth    .7073503964   .7694530921

Unstandardized discriminant coefficients (proportionally related to eigenvectors)
              Dis1          Dis2
SLength   -.829377642    .024102149 
SWidth   -1.534473068   2.164521235 
PLength   2.201211656   -.931921210 
PWidth    2.810460309   2.839187853
# @Etienne's comment:
# This is obtained in R with
# lda(as.factor(Species)~.,data=iris)$scaling
# which is described as being standardized discriminant coefficients in the function definition.

Standardized discriminant coefficients
              Dis1          Dis2
SLength  -.4269548486   .0124075316 
SWidth   -.5212416758   .7352613085 
PLength   .9472572487  -.4010378190 
PWidth    .5751607719   .5810398645

Pooled within-groups correlations between variables and discriminants
              Dis1          Dis2
SLength   .2225959415   .3108117231 
SWidth   -.1190115149   .8636809224 
PLength   .7060653811   .1677013843 
PWidth    .6331779262   .7372420588 

Discriminant scores (Centered 4-variable data multiplied by unstandardized coefficients)
     Dis1           Dis2
-8.061799783    .300420621 
-7.128687721   -.786660426 
-7.489827971   -.265384488 
-6.813200569   -.670631068 
-8.132309326    .514462530 
-7.701946744   1.461720967 
-7.212617624    .355836209 
-7.605293546   -.011633838 
-6.560551593  -1.015163624 
-7.343059893   -.947319209
... etc.
# @Etienne's comment:
# This is obtained in R with
# predict(lda(as.factor(Species)~.,data=iris), iris[,-5])$x

Tentang perhitungan ekstraksi diskriminan di LDA, silakan lihat di sini . Kami menafsirkan diskriminan biasanya dengan koefisien diskriminan atau koefisien diskriminan terstandarisasi (yang terakhir lebih berguna karena perbedaan varians dalam variabel dilepas). Ini seperti di PCA. Tetapi, perhatikan: koefisien di sini adalah koefisien penyesalan pemodelan diskriminan oleh variabel , bukan sebaliknya, seperti di PCA. Karena variabel tidak berkorelasi, koefisien tidak dapat dilihat sebagai kovarian antara variabel dan diskriminan.

Namun kami memiliki matriks lain yang dapat berfungsi sebagai sumber alternatif penafsiran diskriminan - dikumpulkan dalam korelasi kelompok antara diskriminan dan variabel. Karena diskriminan tidak berkorelasi, seperti PC, matriks ini dalam arti analog dengan pemuatan standar PCA.

Secara keseluruhan, sementara di PCA kami memiliki satu-satunya matriks - memuat - untuk membantu menafsirkan laten, di LDA kami memiliki dua matriks alternatif untuk itu. Jika Anda perlu memplot (biplot atau apa pun), Anda harus memutuskan apakah akan memplot koefisien atau korelasi.

Dan, tentu saja, perlu diingatkan bahwa dalam PCA data iris komponen tidak "tahu" bahwa ada 3 kelas; mereka tidak dapat diharapkan untuk mendiskriminasi kelas. Diskriminan memang "tahu" ada kelas dan itu adalah pekerjaan alami mereka yang mendiskriminasi.

ttnphns
sumber
Jadi saya dapat merencanakan, setelah penskalaan yang berubah-ubah, baik "Koefisien diskriminan terstandarisasi" atau "Korelasi dalam-kelompok yang terkumpul antara variabel dan diskriminan" pada sumbu yang sama dengan "Skor diskriminatif" untuk menafsirkan hasil dalam dua cara yang berbeda? Dalam pertanyaan saya, saya telah merencanakan "koefisien diskriminan yang tidak standar" pada poros yang sama dengan "Skor diskriminatif".
Etienne Low-Décarie
1
@ Etienne Saya menambahkan detail yang Anda minta di bagian bawah stats.stackexchange.com/a/48859/3277 jawaban ini . Terima kasih atas kedermawanan Anda.
ttnphns
1
@TLJ, harus: antara variabel dan komponen standar . Saya sudah memasukkan kata. Lihat silakan sini : Loadings are the coefficients to predict...serta di sini : [Footnote: The components' values...]. Memuat adalah koefisien untuk menghitung variabel dari komponen standar dan ortogonal, berdasarkan apa beban adalah kovarian antara ini dan mereka.
ttnphns
1
@TLJ, "ini dan itu" = variabel dan komponen. Anda bilang Anda menghitung skor komponen mentah. Standarisasi setiap komponen dengan varians = 1. Hitung kovariansi antara variabel dan komponen. Itu akan menjadi beban. "Standar" atau "rescaled" memuat adalah memuat dibagi oleh st. penyimpangan dari masing-masing variabel.
ttnphns
1
Memuat kuadrat adalah bagian dari varians variabel yang diperhitungkan oleh komponen.
ttnphns
4

Pemahaman saya adalah bahwa biplots analisis diskriminan linier dapat dilakukan, itu sebenarnya diterapkan dalam paket R ggbiplot dan ggord dan fungsi lain untuk melakukannya diposting di utas StackOverflow ini .

Juga buku "Biplots in practice" oleh M. Greenacre memiliki satu bab (bab 11, lihat pdf ) di atasnya dan pada Gambar 11.5 itu menunjukkan biplot dari analisis diskriminan linier dari set data iris: masukkan deskripsi gambar di sini

Tom Wenseleers
sumber
Sebenarnya, seluruh buku tersedia secara online secara gratis (satu pdf per bab) di sini multivariatestatistics.org/biplots.html .
amoeba
Tidak perlu situs web yang buruk, terima kasih untuk itu!
Tom Wenseleers
2

Saya tahu ini ditanyakan lebih dari setahun yang lalu, dan ttnphns memberikan jawaban yang sangat baik dan mendalam, tapi saya pikir saya akan menambahkan beberapa komentar untuk mereka (seperti saya) yang tertarik pada PCA dan LDA untuk kegunaannya dalam ekologi ilmu pengetahuan, tetapi memiliki latar belakang statistik yang terbatas (bukan ahli statistik).

PC dalam PCA adalah kombinasi linear dari variabel asli yang secara berurutan secara maksimal menjelaskan varians total dalam dataset multidimensi. Anda akan memiliki PC sebanyak yang Anda lakukan variabel asli. Persentase varian yang dijelaskan oleh PC diberikan oleh nilai eigen dari matriks kesamaan yang digunakan, dan koefisien untuk setiap variabel asli pada setiap PC baru diberikan oleh vektor eigen. PCA tidak memiliki asumsi tentang grup. PCA sangat baik untuk melihat bagaimana beberapa variabel berubah nilainya di seluruh data Anda (dalam biplot, misalnya). Menafsirkan PCA sangat bergantung pada biplot.

LDA berbeda karena alasan yang sangat penting - LDA menciptakan variabel baru dengan memaksimalkan varians antar kelompok. Ini masih kombinasi linear dari variabel asli, tetapi alih-alih menjelaskan varians sebanyak mungkin dengan masing-masing LD berurutan, alih-alih mereka ditarik untuk memaksimalkan PERBEDAAN antara kelompok di sepanjang variabel baru itu. Daripada matriks kesamaan, LDA (dan MANOVA) menggunakan matriks perbandingan antara dan di dalam kelompok jumlah kuadrat dan produk silang. Vektor eigen dari matriks ini - koefisien yang awalnya diperhatikan OP - menggambarkan seberapa besar variabel asli berkontribusi pada pembentukan LDs baru.

Untuk alasan ini, vektor eigen dari PCA akan memberi Anda ide yang lebih baik bagaimana suatu perubahan variabel dalam nilai di cloud data Anda, dan seberapa pentingkah perbedaan total dalam set data Anda, daripada LDA. Namun, LDA, terutama dalam kombinasi dengan MANOVA, akan memberi Anda uji statistik perbedaan centroid multivariat dari grup Anda, dan perkiraan kesalahan dalam alokasi poin ke grup masing-masing (dalam arti, ukuran efek multivariat). Dalam suatu LDA, bahkan jika suatu variabel berubah secara linier (dan secara signifikan) lintas kelompok, koefisiennya pada LD mungkin tidak menunjukkan "skala" dari efek itu, dan sepenuhnya bergantung pada variabel lain yang termasuk dalam analisis.

Saya harap itu jelas. Terima kasih atas waktunya. Lihat gambar di bawah ...

PC dan LD dikonstruksi secara berbeda, dan koefisien untuk LD mungkin tidak memberi Anda pengertian tentang bagaimana variabel asli bervariasi dalam dataset Anda

danno
sumber
Ini semua benar, dan +1 dari saya, tetapi saya tidak yakin bagaimana jawaban Anda menjawab pertanyaan awal, yang sangat khusus tentang cara menggambar LDA biplot.
amoeba
Saya kira Anda benar - saya merespons ini, sebagian besar "Menggunakan biplot nilai yang diperoleh melalui analisis komponen utama, adalah mungkin untuk mengeksplorasi variabel penjelas yang membentuk setiap komponen utama. Apakah ini juga mungkin dengan Analisis Diskriminan Linier? " - dan jawabannya adalah, ya, tetapi artinya sangat berbeda, seperti dijelaskan di atas ... Terima kasih atas komentar dan +1!
danno