ความเห็น: 0
ก้าวย่างทางเดิน ลืมเลือนคืนวัน ดั้นด้นไป: แกะกล่อง ๔ [C]
ข้อมูลที่นำเสนอด้วย box and whisker plot นั้นเป็นการแบ่งข้อมูลออกเป็นส่วน ๆ ที่เท่ากัน ๔ ส่วน หรือแบ่งเป็น quartile
ค่าที่เกี่ยวข้องกับจุดแบ่งของข้อมูลก็คือค่าของข้อมูลที่ตำแหน่งต่าง ๆ เช่น ค่าที่ตำแหน่ง Q1, Q2, Q3 (แบ่งข้อมูลออกเป็น 4 ส่วน ดังนั้นจุดแบ่งช่วงข้อมูลจะมี ๓ จุด)
ค่าที่ตำแหน่ง Q2 หรือค่า Q2 นั้นคือเรารู้จักอีกชื่อหนึ่งคือ ค่ามัธยฐาน (median) หรือค่าที่ตำแหน่ง 50% tile หรือเป็นค่าที่อยู่กึ่งกลางของข้อมูล
จากความรู้เดิมที่เรียนมาตั้งแต่สมัยประถม มัธยม มหาวิทยาลัย หรือสมัยไหนก็แล้วแต่ การหาค่ามัธยฐานของข้อมูลนั้นแบ่งเป็น ๒ ส่วนคือ
- การหาตำแหน่งของค่ามัธยฐานเมื่อจำนวนข้อมูล (ทั้งหมด) เป็นจำนวนคู่ (even)
- การหาตำแหน่งของค่ามัธยฐานเมื่อจำนวนข้อมูล (ทั้งหมด) เป็นจำนวนคี่ (odd)
- เมื่อจำนวนข้อมูล (n) เป็นเลขคู่ ค่ามัธยฐานคือค่าเฉลี่ยของข้อมูลตำแหน่งที่ n/2 กับข้อมูลตำแหน่งที่ (n/2) +1 เช่นจำนวนข้อมูลทั้งหมดมีจำนวน 12 ข้อมูล ค่ามัธยฐานคือค่าเฉลี่ยของข้อมูลในตำแหน่งที่ 12/2 กับค่าของข้อมูลที่ตำแหน่ง (12/2) + 1 หรือค่ามัธยฐานของข้อมูลชุดนี้คือค่าเฉลี่ยของข้อมูลที่ตำแหน่งที่ 6 และตำแหน่งที่ 7
- เมื่อจำนวนข้อมูล (n) เป็นเลขคี่ ค่ามัธยฐานคือค่าที่ตำแหน่งกึ่งกลางของข้อมูลหรือค่าของข้อมูลตำแหน่งที่ (n+1)/2 เช่นข้อมูลมีทั้งหมด 11 ข้อมูล ค่ามัธยฐานของข้อมูลชุดนี้คือค่าของข้อมูลที่อยู่ที่ตำแหน่ง (n+1)/2 หรือคือค่าที่ตำแหน่ง (11+1)/2 คือค่าของข้อมูลที่ตำแหน่งที่ 6
ทั้งนี้ก่อนที่จะทำการหาตำแหน่งที่ของข้อมูลนั้น จะต้องทำการเรียงข้อมูลจากน้อยไปหามากเสียก่อน
ตัวอย่างเมื่อจำนวนข้อมูลเป็นจำนวนคู่
ผมจะใช้การสุ่มตัวอย่างข้อมูลตั้งแต่ ๑ ถึง ๑๐๐ มา ๑๒ ค่า แทนจำนวนข้อมูลที่เป็นจำนวนคู่เก็บค่าที่สุ่มมาได้ไว้ใน a ซึ่งเป็นวัตถุชนิด numeric vector ของ R
การสุ่มแต่ละครั้งจะได้ค่าที่ไม่เหมือนกันนะครับ
> a<- sample(1:100,12)
ค่าที่สุ่มได้ และเก็บไว้ในวัตถุ a คือ
> a
[1] 17 39 46 25 19 35 28 16 27 37 64 47
เมื่อเรียงลำดับจากค่าน้อยไปค่ามาก
> sort(a)
[1] 16 17 19 25 27 28 35 37 39 46 47 64
หาจำนวนข้อมูลทั้งหมด
> length(a)
[1] 12
นั่นคือจำนวนข้อมูลทั้งหมดมี ๑๒ ข้อมูล หรือจำนวนข้อมูลทั้งหมดเป็นเลขคู่
ดังนั้นตำแหน่งที่ของข้อมูลที่เป็นตำแหน่ง n/2 คือ
> (length(a))/2
[1] 6
ตำแหน่งที่ ๖
และตำแหน่งที่ของข้อมูลที่ตำแหน่ง (n/2) +1 คือ
> ((length(a))/2)+1
[1] 7
ตำแหน่งข้อมูลที่ ๗
ทำการเรียงข้อมูลจากน้อยไปมากแล้วเก็บไว้ใน a เช่นเดิม
> a <- sort(a)
ข้อมูลที่เก็บไว้ใน a ที่่ผ่านการเรียงลำดับข้อมูลจากน้อยไปมากแล้วคือ
> a
[1] 16 17 19 25 27 28 35 37 39 46 47 64
ดึงค่าของ a ในตำแหน่งที่ n/2 ออกมา
> a[(length(a))/2]
[1] 28
นั่นคือค่าในตำแหน่งที่ n/2 ของข้อมูลมีค่าเป็น ๒๘
ดึงค่าของ a ในตำแหน่งที่ (n/2) +1 ออกมา
> a[((length(a))/2)+1]
[1] 35
นั่นคือค่าในตำแหน่งที่ (n/2) +1 ของข้อมูลมีค่าเป็น ๓๕
หาค่าเฉลี่ยของข้อมูลตำแหน่งที่ ๖ (๒๘) และตำแหน่งที่ ๗ (๓๕)
> mean(c(a[(length(a))/2],a[((length(a))/2)+1]))
[1] 31.5
ได้ค่าเฉลี่ยเท่ากับ ๓๑.๕ นั่นคือค่ามัธยฐานของข้อมูลชุดนี้มีค่าเป็น ๓๑.๕
หรือเมื่อใช้ฟังก์ชัน median() ใน R ให้หาค่ามัธยฐานจะได้ค่ามัธยฐานของข้อมูลเป็น
> median(a)
[1] 31.5
หรือใช้ฟังก์ชัน quantile() ใน R หาค่ามัธยฐานของข้อมูลชุดนี้ โดยกำหนดค่า probability เท่ากับ 0.5 (หรือ 50%) จะได้ค่ามัธยฐานข้องข้อมูลเป็น
> quantile(a, prob=0.5)
50%
31.5
หรือคำณวณค่าเฉลี่ยของค่าตำแหน่งที่ ๖ และตำแหน่งที่ ๗ ด้วยการคำณวฯมือจะได้ค่ามัธยฐานของข้อมูลเป็น
> (28+35)/2
[1] 31.5
ในกรณีที่จำนวนข้อมูล (ทั้งหมด) เป็นเลขคี่
ผมจะใช้การสุ่มตัวอย่างข้อมูลตั้งแต่ ๑ ถึง ๑๐๐ มา ๑๑ ค่า แทนจำนวนข้อมูลที่เป็นจำนวนคี่เก็บค่าที่สุ่มมาได้ไว้ใน b ซึ่งเป็นวัตถุชนิด numeric vector ของ R
> b<- sample(1:100,11)
ค่าที่สุ่มได้จำนวน ๑๑ ข้อมูลที่เก็บไว้ใน b คือ
> b
[1] 5 99 28 88 21 20 90 43 82 45 63
หรือค่าที่สุ่มได้เมื่อเรียงลำดับข้อมูลจากน้อยไปมากแล้วคือ
> sort(b)
[1] 5 20 21 28 43 45 63 82 88 90 99
หาจำนวนทั้งหมดของข้อมูล
> length(b)
[1] 11
ข้อมูลมีทั้งหมด ๑๑ ข้อมูล (ค่า)
ตำแหน่งของค่ามัธยฐานคือข้อมูลในตำแหน่งที่ (n+1)/2
> (length(b) +1)/2
[1] 6
ค่ามัธยฐานคือค่าที่อยู่ในตำแหน่งที่ ๖ ของข้อมูล
ทำการเรียงลำดับข้อมูลแล้วเก็บไว้ใน b เช่นเดิม
> b <- sort(b)
หรือค่าที่เรียงลำดับจากน้อยไปมากแล้วคือ
> b
[1] 5 20 21 28 43 45 63 82 88 90 99
ดึงค่าของ b ในตำแหน่งที่ ๖ ออกมา ซึ่งคือ
> b[(length(b) +1)/2]
[1] 45
มัธยฐานของข้อมูลชุดนี้คือ ๔๕
หรือเมื่อใช้ฟังก์ชัน median() ใน R ให้หาค่ามัธยฐานของข้อมูลชุดนี้จะได้ค่ามัธยฐานเป็น
> median(b)
[1] 45
ค่ามัธยฐานของข้อมูลชุดนี้เมื่อใช้ฟังก์ชัน median() ใน R คือ ๔๕
หรือใช้ฟังก์ชัน quantile() ใน R หาค่ามัธยฐานของข้อมูลชุดนี้ โดยกำหนดค่า probability เท่ากับ 0.5 (50% tile) จะได้ค่ามัธยฐานของข้อมูลเป็น
> quantile(b, prob=0.5)
50%
45
ค่ามัธยฐานของข้อมูลชุดนี้เมื่อใช้ฟังก์ชัน quantile() ใน R จะได้ค่ามัธยฐานเป็น ๔๕
หรือเราจะใช้ฟังก์ชัน summary() ใน R หาค่ามัธยฐานของข้อมูลก็ได้
> summary(a)
Min. 1st Qu. Median Mean 3rd Qu. Max.
16.00 23.50 31.50 33.33 40.75 64.00
ค่ามัธยฐานของข้อมูลชุด a มีค่าเป็น ๓๑.๕
> summary(b)
Min. 1st Qu. Median Mean 3rd Qu. Max.
5.00 24.50 45.00 53.09 85.00 99.00
ค่ามัธยฐานของข้อมูลชุด b มีค่าเป็น ๔๕
อิอิอิ
เราเอง
เพลง: ตาหรุ่ง
ศิลปิน: คนด่านเกวียน
บันทึกอื่นๆ
- เก่ากว่า « ก้าวย่างทางเดิน ลืมเลือนคืนวัน ด...
- ใหม่กว่า » ก้าวย่างทางเดิน ลืมเลือนคืนวัน ด...