วิธีการระบุตัวแบ่งฮิสโตแกรมใน r (พร้อมตัวอย่าง)
ตามค่าเริ่มต้น ฟังก์ชัน hist() ใน R จะใช้ กฎของ Sturges เพื่อกำหนดจำนวนช่องข้อมูลที่จะใช้ในฮิสโตแกรม
กฎของสเตอเจสใช้สูตรต่อไปนี้เพื่อกำหนดจำนวนกลุ่มที่เหมาะสมที่สุดเพื่อใช้ในฮิสโตแกรม:
ถังขยะที่เหมาะสมที่สุด = ⌈log 2 n + 1⌉
ทอง:
- n: จำนวน การสังเกต ทั้งหมดในชุดข้อมูล
- ⌈ ⌉: สัญลักษณ์ที่มีความหมายว่า “เพดาน” คือ การปัดเศษคำตอบให้เป็นจำนวนเต็มที่ใกล้ที่สุด
ตัวอย่างเช่น หากมีการสังเกต 31 รายการในชุดข้อมูล กฎของ Sturge จะใช้สูตรต่อไปนี้เพื่อกำหนดจำนวนกลุ่มที่เหมาะสมที่สุดที่จะใช้ในฮิสโตแกรม:
ถังขยะที่เหมาะสมที่สุด = ⌈log 2 (31) + 1⌉ = ⌈4.954 + 1⌉ = ⌈5.954⌉ = 6
ตามกฎของสเตอเจส เราควรใช้กล่อง 6 กล่องในฮิสโตแกรมเพื่อแสดงภาพชุดข้อมูลนี้
หากคุณใช้ฟังก์ชัน hist() ใน R กฎของ Sturges จะถูกนำมาใช้เพื่อเลือกจำนวนถังขยะที่จะแสดงในฮิสโตแกรมโดยอัตโนมัติ
hist(data)
แม้ว่าคุณจะใช้อาร์กิวเมนต์ ตัวแบ่ง เพื่อระบุจำนวนถังขยะที่จะใช้ R จะใช้มันเป็น “คำแนะนำ” ของจำนวนถังขยะที่จะใช้เท่านั้น
hist(data, breaks= 7 )
อย่างไรก็ตาม คุณสามารถใช้รหัสต่อไปนี้เพื่อบังคับให้ R ใช้กล่องตามจำนวนที่ระบุในฮิสโตแกรม:
#create histogram with 7 bins hist(data, breaks = seq(min(data), max(data), length. out = 8 ))
หมายเหตุ : คุณต้องใช้ความยาว n+1 สำหรับ length.out โดยที่ n คือจำนวนถังขยะที่คุณต้องการ
ตัวอย่างต่อไปนี้แสดงวิธีใช้โค้ดนี้ในทางปฏิบัติ
ตัวอย่าง: การระบุตัวแบ่งฮิสโตแกรมใน R
สมมติว่าเรามีชุดข้อมูลต่อไปนี้ใน R ที่มีค่า 16 ค่า:
#create vector of 16 values
data <- c(2, 3, 3, 3, 4, 4, 5, 6, 8, 10, 12, 14, 15, 18, 20, 21)
หากเราใช้ฟังก์ชัน hist() R จะสร้างฮิสโตแกรมต่อไปนี้โดยมี 5 bins:
#create histogram
hist(data)
หมายเหตุ : R ใช้กฎของสเตอเจสเพื่อกำหนดว่า 5 กลุ่มคือจำนวนกลุ่มที่เหมาะสมที่สุดที่จะใช้เพื่อแสดงภาพชุดข้อมูลด้วยการสังเกต 16 ครั้ง
หากเราพยายามใช้อาร์กิวเมนต์ ตัวแบ่ง เพื่อระบุ 7 กลุ่มที่จะใช้ในฮิสโตแกรม R จะถือว่านี่เป็น “คำแนะนำ” เท่านั้นและเลือกใช้ 10 กลุ่มแทน:
#attempt to create histogram with 7 bins
hist(data, breaks= 7 )
อย่างไรก็ตาม เราสามารถใช้โค้ดต่อไปนี้เพื่อบังคับให้ R ใช้ 7 bins ในฮิสโตแกรม:
#create histogram with 7 bins
hist(data, breaks = seq(min(data), max(data), length. out = 8 ))
โปรดทราบว่าผลลัพธ์ที่ได้จะเป็นฮิสโตแกรมที่มีกล่อง 7 ช่องที่มีระยะห่างเท่ากัน
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการทั่วไปอื่นๆ ใน R:
วิธีสร้างฮิสโตแกรมความถี่สัมพัทธ์ใน R
วิธีการพล็อตฮิสโตแกรมหลายอันใน R