ฉันทำการวิเคราะห์องค์ประกอบหลัก (PCA) ด้วย R โดยใช้สองฟังก์ชันที่แตกต่างกัน ( prcomp
และprincomp
) และสังเกตว่าคะแนน PCA นั้นแตกต่างกันในการลงชื่อ มันจะเป็นอย่างไร
พิจารณาสิ่งนี้:
set.seed(999)
prcomp(data.frame(1:10,rnorm(10)))$x
PC1 PC2
[1,] -4.508620 -0.2567655
[2,] -3.373772 -1.1369417
[3,] -2.679669 1.0903445
[4,] -1.615837 0.7108631
[5,] -0.548879 0.3093389
[6,] 0.481756 0.1639112
[7,] 1.656178 -0.9952875
[8,] 2.560345 -0.2490548
[9,] 3.508442 0.1874520
[10,] 4.520055 0.1761397
set.seed(999)
princomp(data.frame(1:10,rnorm(10)))$scores
Comp.1 Comp.2
[1,] 4.508620 0.2567655
[2,] 3.373772 1.1369417
[3,] 2.679669 -1.0903445
[4,] 1.615837 -0.7108631
[5,] 0.548879 -0.3093389
[6,] -0.481756 -0.1639112
[7,] -1.656178 0.9952875
[8,] -2.560345 0.2490548
[9,] -3.508442 -0.1874520
[10,] -4.520055 -0.1761397
เหตุใดเครื่องหมาย ( +/-
) จึงแตกต่างกันสำหรับการวิเคราะห์ทั้งสอง ถ้าฉันใช้ส่วนประกอบหลักPC1
และPC2
เป็นตัวทำนายในการถดถอยนั่นlm(y ~ PC1 + PC2)
จะเปลี่ยนความเข้าใจของฉันอย่างสมบูรณ์เกี่ยวกับผลกระทบของตัวแปรสองตัวตามy
วิธีที่ฉันใช้! ฉันจะทำอย่างไรแล้วบอกว่าPC1
มีเช่นผลบวกต่อy
และPC2
ได้เช่นผลกระทบต่อy
?
นอกจากนี้:หากสัญญาณขององค์ประกอบ PCA นั้นไม่มีความหมายนี่เป็นความจริงสำหรับการวิเคราะห์ปัจจัย (FA) เช่นกันหรือไม่ เป็นที่ยอมรับหรือไม่ที่จะพลิก (กลับด้าน) เครื่องหมายของแต่ละองค์ประกอบ PCA / FA คะแนน (หรือการโหลดเป็นคอลัมน์ของการโหลดเมทริกซ์)?