ขั้นแรกมีวิธีการสร้างbiplots ที่เรียกว่าในกรณีของการวิเคราะห์การติดต่อทางจดหมาย ในทุกกรณีแนวคิดพื้นฐานคือการหาวิธีแสดงการประมาณ 2D ที่ดีที่สุดของ "ระยะทาง" ระหว่างเซลล์แถวและเซลล์คอลัมน์ กล่าวอีกนัยหนึ่งเราต้องการลำดับชั้น (เราพูดถึง "อุปสมบท") ของความสัมพันธ์ระหว่างแถวและคอลัมน์ของตารางฉุกเฉิน
ในเวลาสั้น ๆ CA จะสลายตัวสถิติไค - สแควร์ที่เกี่ยวข้องกับตารางแบบสองทางเป็นปัจจัยมุมฉากที่เพิ่มการแยกระหว่างคะแนนแถวและคอลัมน์ (เช่นความถี่ที่คำนวณจากตารางโปรไฟล์) ที่นี่คุณจะเห็นว่ามีการเชื่อมต่อกับ PCA บ้าง แต่การวัดความแปรปรวน (หรือตัวชี้วัด) ที่เก็บไว้ใน CA คือซึ่งขึ้นอยู่กับโปรไฟล์คอลัมน์เท่านั้น (เนื่องจากมีแนวโน้มที่จะให้ความสำคัญกับรังสีที่มีค่าขอบขนาดใหญ่ เรายังสามารถให้น้ำหนักข้อมูลเริ่มต้นอีกครั้ง แต่นี่เป็นอีกเรื่องหนึ่ง)χ2
นี่คือคำตอบที่ละเอียดยิ่งขึ้น การใช้งานที่เสนอในcorresp()
ฟังก์ชั่น (ในMASS
) ดังต่อไปนี้จากมุมมองของ CA เป็นการสลายตัว SVD ของเมทริกซ์การเข้ารหัสหลอกตาที่เป็นตัวแทนของแถวและคอลัมน์ (เช่นกับ Nกลุ่มตัวอย่างทั้งหมด) นี่คือแสงสว่างด้วยการวิเคราะห์สหสัมพันธ์ที่ยอมรับ ในทางตรงกันข้ามโรงเรียนการวิเคราะห์ข้อมูลของฝรั่งเศสถือว่า CA เป็นตัวแปรของ PCA ซึ่งคุณจะค้นหาทิศทางที่เพิ่ม "ความเฉื่อย" ในคลาวด์ข้อมูลให้ได้มากที่สุด สิ่งนี้ทำได้โดยการตัดเมทริกซ์ความเฉื่อยในแนวทแยงที่คำนวณจากตารางสองทางที่กึ่งกลางและปรับขนาด (ตามความถี่ของระยะขอบ) และการแสดงโปรไฟล์แถวและคอลัมน์ในระบบพิกัดใหม่นี้RtC=NN
หากคุณพิจารณาตารางที่มีแถวและj = 1 , … ,คอลัมน์Jแต่ละแถวจะถ่วงน้ำหนักด้วยผลรวมของขอบที่สอดคล้องกันซึ่งให้ชุดความถี่ตามเงื่อนไขที่เกี่ยวข้องกับแต่ละแถว: f j | ฉัน = n ฉันJ / n ฉัน ⋅ คอลัมน์ส่วนเพิ่มเรียกว่าโปรไฟล์เฉลี่ย (สำหรับแถว) สิ่งนี้ทำให้เรามีเวกเตอร์ของพิกัดซึ่งเรียกว่าโปรไฟล์ (โดยแถว) สำหรับคอลัมน์เรามีi=1,…,Ij=1,…,Jfj|i=nij/ni⋅เจ ในทั้งสองกรณีเราจะพิจารณาโปรไฟล์แถว I (ที่เกี่ยวข้องกับน้ำหนักของพวกเขา f i ⋅ ) เป็นรายบุคคลในพื้นที่คอลัมน์และโปรไฟล์คอลัมน์ J (เกี่ยวข้องกับน้ำหนักของพวกเขา f ⋅ j ) เป็นรายบุคคลในพื้นที่แถว ตัวชี้วัดที่ใช้ในการคำนวณความใกล้ชิดระหว่างบุคคลสองคนคือระยะทาง χ 2 ยกตัวอย่างเช่นระหว่างสองแถวฉันและฉัน'เรามีfi|j=nij/n⋅jIfi⋅Jf⋅jχ2ii′
d2χ2(i,i′)=∑j=1Jnn⋅j(nijni⋅−ni′jni′⋅)2
χ2H0ni⋅×n⋅j/n(i,j)
χ2cos2ijχ2chisq.test(tab)$expected-chisq.test(tab)$observed
χ2nϕ2
จริงๆแล้วมีหลายแพ็คเกจที่อาจให้ CA ที่ได้รับการปรับปรุงเมื่อเทียบกับฟังก์ชั่นที่มีในMASS
แพ็คเกจ: ade4 , FactoMineR , anacorและแคลิฟอร์เนีย
ล่าสุดเป็นหนึ่งที่ถูกนำมาใช้เพื่อประกอบการอธิบายโดยเฉพาะอย่างยิ่งของคุณและกระดาษที่ถูกตีพิมพ์ในวารสารของสถิติซอฟต์แวร์ที่อธิบายถึงมากที่สุดของ functionnalities ของ: การวิเคราะห์ความสอดคล้องใน R กับสองและสามมิติกราฟิก: แคลิฟอร์เนียแพคเกจ
ดังนั้นตัวอย่างของคุณเกี่ยวกับสีตา / ผมสามารถทำซ้ำได้หลายวิธี:
data(HairEyeColor)
tab <- apply(HairEyeColor, c(1, 2), sum) # aggregate on gender
tab
library(MASS)
plot(corresp(tab, nf=2))
corresp(tab, nf=2)
library(ca)
plot(ca(tab))
summary(ca(tab, nd=2))
library(FactoMineR)
CA(tab)
CA(tab, graph=FALSE)$eig # == summary(ca(tab))$scree[,"values"]
CA(tab, graph=FALSE)$row$contrib
library(ade4)
scatter(dudi.coa(tab, scannf=FALSE, nf=2))
ในทุกกรณีสิ่งที่เราอ่านใน biplot ที่เกิดนั้นเป็นพื้น (ฉัน จำกัด การตีความของฉันไปที่แกนที่ 1 ซึ่งอธิบายความเฉื่อยส่วนใหญ่):
- แกนแรกเน้นความขัดแย้งที่ชัดเจนระหว่างสีผมอ่อนและสีเข้มและระหว่างดวงตาสีฟ้าและสีน้ำตาล
- คนที่มีผมสีบลอนด์มักจะมีตาสีฟ้าและคนที่มีผมสีดำมักจะมีตาสีน้ำตาล
มีทรัพยากรเพิ่มเติมมากมายในการวิเคราะห์ข้อมูลในห้องปฏิบัติการด้านชีวสารสนเทศจากลียงในฝรั่งเศส นี่เป็นภาษาฝรั่งเศสเป็นส่วนใหญ่ แต่ฉันคิดว่ามันจะไม่เป็นปัญหาสำหรับคุณมากนัก เอกสารประกอบคำบรรยายทั้งสองต่อไปนี้ควรน่าสนใจตั้งแต่เริ่มต้นครั้งแรก:
k