การแจกแจงไคสแควร์ใน r: dchisq, pchisq, qchisq, rchisq
บทช่วยสอนนี้จะอธิบายวิธีใช้การแจกแจงไคสแควร์ใน R โดยใช้ฟังก์ชันต่อไปนี้:
- dchisq : ส่งกลับค่าของฟังก์ชันความหนาแน่นของความน่าจะเป็นแบบไคสแควร์
- pchisq : ส่งกลับค่าของฟังก์ชันความหนาแน่นสะสมไค-สแควร์
- qchisq : ส่งกลับค่าของฟังก์ชันควอนไทล์ Chi-Square
- rchisq : สร้างเวกเตอร์ของตัวแปรสุ่มแบบกระจาย Chi-Square
ตัวอย่างต่อไปนี้แสดงวิธีใช้แต่ละฟังก์ชันเหล่านี้ในทางปฏิบัติ
ดีชิสค์
เรามักจะใช้ฟังก์ชัน dchisq() ร่วมกับฟังก์ชัน Curve() เพื่อพล็อตการแจกแจงแบบไคสแควร์ด้วยระดับความเป็นอิสระจำนวนหนึ่ง
ตัวอย่างเช่น เราสามารถใช้โค้ดต่อไปนี้เพื่อพล็อตการแจกแจงแบบไคสแควร์ด้วยระดับความอิสระ 5 องศา:
#plot Chi_Square distribution with 5 degrees of freedom curve(dchisq(x, df= 5 ), from= 0 , to= 20 )

แกน x แสดงค่าของสถิติการทดสอบไคสแควร์ และแกน y แสดงค่าที่สอดคล้องกันของฟังก์ชันความหนาแน่นของความน่าจะเป็น
ที่เกี่ยวข้อง: วิธีการพล็อตการแจกแจง Chi-Square ใน R ได้อย่างง่ายดาย
pcisq
เรามักจะใช้ pchisq() ฟังก์ชันเพื่อค้นหา ค่า p ที่สอดคล้องกับสถิติการทดสอบไคสแควร์ที่กำหนด
ตัวอย่างเช่น สมมติว่าเราทำการ ทดสอบความเป็นอิสระของไคสแควร์ และได้สถิติการทดสอบที่ X2 = 0.86404 โดยมีดีกรีอิสระ 2 องศา
เราสามารถใช้ฟังก์ชัน pchisq() เพื่อค้นหาค่า p ที่สอดคล้องกับสถิติการทดสอบนี้:
#calculate p-value for given test statistic with 2 degrees of freedom 1-pchisq(0.86404, df= 2 ) [1] 0.6491964
ค่า p กลายเป็น 0.6491964
นอกจากนี้เรายังสามารถยืนยันได้ว่าสิ่งนี้ถูกต้องโดยใช้ คะแนนไคสแควร์กับเครื่องคำนวณค่า P
บางสิ่งบางอย่าง
เรามักจะใช้ qchisq() ฟังก์ชันเพื่อค้นหาค่าไคสแควร์วิกฤตที่สอดคล้องกับระดับนัยสำคัญและระดับความเป็นอิสระที่กำหนด
ตัวอย่างเช่น เราสามารถใช้โค้ดต่อไปนี้เพื่อค้นหาค่าไคสแควร์วิกฤตที่สอดคล้องกับระดับนัยสำคัญ 0.05 โดยมีดีกรีอิสระ 13 องศา:
qchisq(p= .95 , df= 13 )
[1] 22.36203
ค่าวิกฤตกลายเป็น 22.36203
นอกจากนี้เรายังสามารถยืนยันได้ว่าสิ่งนี้ถูกต้องโดยใช้ เครื่องคำนวณค่าวิกฤตไคสแควร์
ริชชี่
เรามักจะใช้ rchisq() ฟังก์ชั่นเพื่อสร้างรายการค่าสุ่ม n ค่าที่ตามหลังการแจกแจงไคสแควร์ด้วยระดับความอิสระที่กำหนด
ตัวอย่างเช่น เราสามารถใช้โค้ดต่อไปนี้เพื่อสร้างรายการค่าสุ่ม 1,000 ค่าที่ตามหลังการแจกแจงแบบไคสแควร์ด้วยความอิสระ 5 องศา:
#make this example reproducible
set. seed ( 0 )
#generate 1000 random values that follow Chi-Square dist with df=5
values <- rchisq(n= 1000 , df= 5 )
#view first five values
head(values)
[1] 8.369701 3.130487 1.985623 5.258747 10.578594 6.360859
นอกจากนี้เรายังสามารถใช้ฟังก์ชัน hist( ) เพื่อสร้างฮิสโตแกรมเพื่อให้เห็นภาพการกระจายของค่านี้:
#create histogram to visualize distribution of values
hist(values)

แกน x แสดงค่าข้อมูล และแกน y แสดงความถี่ของค่าเหล่านั้น
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้อธิบายวิธีการทำงานกับการแจกแจงอื่น ๆ ใน R:
การแจกแจงแบบปกติใน R: dnorm, pnorm, qnorm และ rnorm
การแจกแจงแบบทวินามใน R: dbinom, pbinom, qbinom และ rbinom
การกระจายตัวของปลาใน R: dpois, ppois, qpois และ rpois