"Machine Learning For Hackers" O'Reilly mengatakan bahwa setiap komponen utama mewakili persentase perbedaan. Saya mengutip bagian yang relevan dari halaman di bawah ini (bab 8, hal.207). Berbicara dengan ahli lain, mereka sepakat itu persentase.
Namun 24 komponen berjumlah 133,2095%. Bagaimana itu bisa terjadi?
Setelah meyakinkan diri sendiri bahwa kita dapat menggunakan PCA, bagaimana kita melakukannya dalam R? Sekali lagi, ini adalah tempat di mana R bersinar: keseluruhan PCA dapat dilakukan dalam satu baris kode. Kami menggunakan fungsi princomp untuk menjalankan PCA:
pca <- princomp(date.stock.matrix[,2:ncol(date.stock.matrix)])
Jika kita cukup mengetik pca ke R, kita akan melihat ringkasan cepat dari komponen utama:
Call: princomp(x = date.stock.matrix[, 2:ncol(date.stock.matrix)]) Standard deviations: Comp.1 Comp.2 Comp.3 Comp.4 Comp.5 Comp.6 Comp.7 29.1001249 20.4403404 12.6726924 11.4636450 8.4963820 8.1969345 5.5438308 Comp.8 Comp.9 Comp.10 Comp.11 Comp.12 Comp.13 Comp.14 5.1300931 4.7786752 4.2575099 3.3050931 2.6197715 2.4986181 2.1746125 Comp.15 Comp.16 Comp.17 Comp.18 Comp.19 Comp.20 Comp.21 1.9469475 1.8706240 1.6984043 1.6344116 1.2327471 1.1280913 0.9877634 Comp.22 Comp.23 Comp.24 0.8583681 0.7390626 0.4347983 24 variables and 2366 observations.
Dalam ringkasan ini, standar deviasi memberi tahu kami berapa banyak varian dalam set data yang diperhitungkan oleh komponen utama yang berbeda. Komponen pertama, disebut Comp.1, menyumbang 29% dari varians, sedangkan komponen berikutnya menyumbang 20%. Pada akhirnya, komponen terakhir, Comp.24, menyumbang kurang dari 1% dari varians. Ini menunjukkan bahwa kita dapat belajar banyak tentang data kita hanya dengan melihat komponen utama pertama.
[Kode dan data dapat ditemukan di github .]
R
perangkat lunak itu sendiri. Menemukan kesalahan itu adalah tangkapan yang bagus (saya harap Anda merasa senang mengetahui apa yang sebenarnya terjadi dengan PCA)!
Standard deviations
ini sedikit salah. Karena standar deviasi sebenarnya adalah standar deviasi, kita harus mengaturnya untuk melihat berapa banyak varian yang diwakili oleh masing-masing komponen. Komponen pertama akan mewakili persen dari total varians.