Pertimbangkan biplot PCA berikut:
library(mvtnorm)
set.seed(1)
x <- rmvnorm(2000, rep(0, 6), diag(c(5, rep(1,5))))
x <- scale(x, center=T, scale=F)
pc <- princomp(x)
biplot(pc)
Ada sekelompok panah merah yang diplot, apa artinya? Saya tahu bahwa panah pertama berlabel "Var1" harus menunjukkan arah yang paling beragam dari kumpulan data (jika kita menganggapnya sebagai 2000 titik data, masing-masing berupa vektor ukuran 6). Saya juga membaca dari suatu tempat, arah yang paling bervariasi adalah arah vektor eigen pertama.
Namun, membaca kode biplot di R. Baris tentang panah adalah:
if(var.axes)
arrows(0, 0, y[,1L] * 0.8, y[,2L] * 0.8, col = col[2L],
Di mana y
sebenarnya memuat matriks, yang merupakan vektor vektor eigen. Jadi sepertinya panah ke-1 sebenarnya menunjuk dari (0, 0)
ke (y[1, 1], y[1, 2])
. Saya mengerti bahwa kami mencoba untuk merencanakan panah dimensi tinggi ke bidang 2D. Itu sebabnya kami mengambil elemen 1 dan 2 dari y[1, ]
vektor. Namun yang tidak saya mengerti adalah:
Bukankah seharusnya arah vektor eigen pertama menjadi vektor yang dilambangkan dengan y[, 1]
, bukan y[1, ]
? (Sekali lagi, y
ini adalah matriks vektor eigen, yang diperoleh dengan PCA atau dengan komposisi eigend dari t(x) %*% x
.) Yaitu vektor eigen haruslah vektor kolom, bukan vektor horizontal tersebut.
Meskipun kita memplotnya pada bidang 2D, kita harus menggambar arah pertama dari (0, 0)
menunjuk ke (y[1, 1], y[2, 1])
?