วิธีการพล็อตข้อมูลหมวดหมู่ใน r (พร้อมตัวอย่าง)


ในสถิติ ข้อมูลเชิงหมวดหมู่ หมายถึงข้อมูลที่สามารถใช้ชื่อหรือป้ายกำกับได้

ตัวอย่างได้แก่:

  • สถานะการสูบบุหรี่ (“ผู้สูบบุหรี่”, “ผู้ไม่สูบบุหรี่”)
  • สีตา (“น้ำเงิน”, “เขียว”, “เฮเซล”)
  • ระดับการศึกษา (เช่น “มัธยมปลาย” “ปริญญาตรี” “ปริญญาโท”)

แผนภูมิสามแผนภูมิที่ใช้กันทั่วไปเพื่อแสดงภาพข้อมูลประเภทนี้ ได้แก่:

  • แผนภูมิแท่ง
  • แปลงโมเสก
  • แปลงกล่องตามกลุ่ม

ตัวอย่างต่อไปนี้แสดงวิธีการสร้างแต่ละแปลงเหล่านี้ใน R

ตัวอย่างที่ 1: แผนภูมิแท่ง

รหัสต่อไปนี้แสดงวิธีสร้างแผนภูมิแท่งเพื่อแสดงภาพความถี่ของการเปลี่ยนแปลงในกรอบข้อมูลเฉพาะ:

 library (ggplot2)

#create data frame
df <- data. frame (result = c('W', 'L', 'W', 'W', 'W', 'L', 'W', 'L', 'W', 'L'),
                 team = c('B', 'B', 'B', 'B', 'D', 'A', 'A', 'A', 'C', 'C'),
                 points = c(12, 28, 19, 22, 32, 45, 22, 28, 13, 19),
                 rebounds = c(5, 7, 7, 12, 11, 4, 10, 7, 8, 8))

#create bar chart of teams
ggplot(df, aes (x=team)) +
  geom_bar()

แกน x แสดงชื่อของแต่ละทีม และแกน y แสดงความถี่ของแต่ละทีมในกรอบข้อมูล

นอกจากนี้เรายังสามารถใช้โค้ดต่อไปนี้เพื่อเรียงลำดับแท่งในแผนภูมิจากมากไปน้อย:

 #create bar chart of teams, ordered from large to small
ggplot(df, aes (x= reorder (team, team, function (x)- length (x)))) +
  geom_bar(fill=' steelblue ') +
  labs(x=' Team ') 

ตัวอย่างที่ 2: การลงจุดกล่องตามกลุ่ม

Boxplots แบบคลัสเตอร์เป็นวิธีที่มีประโยชน์ในการแสดงภาพตัวแปรตัวเลข ซึ่งจัดกลุ่มตามตัวแปรหมวดหมู่

ตัวอย่างเช่น รหัสต่อไปนี้แสดงวิธีการสร้าง boxplots ที่แสดงการกระจายคะแนนที่จัดกลุ่มตามทีม:

 library (ggplot2)

#create data frame
df <- data. frame (result = c('W', 'L', 'W', 'W', 'W', 'L', 'W', 'L', 'W', 'L'),
                 team = c('B', 'B', 'B', 'B', 'D', 'A', 'A', 'A', 'C', 'C'),
                 points = c(12, 28, 19, 22, 32, 45, 22, 28, 13, 19),
                 rebounds = c(5, 7, 7, 12, 11, 4, 10, 7, 8, 8))

#create boxplots of points, grouped by team
ggplot(df, aes (x=team, y=points)) +
  geom_boxplot(fill=' steelblue ')

แกน x แสดงทีมต่างๆ และแกน y แสดงการกระจายคะแนนที่แต่ละทีมทำคะแนนได้

ตัวอย่างที่ 3: พล็อตโมเสก

พล็อตแบบเรียงต่อกันเป็นพล็อตประเภทหนึ่งที่แสดงความถี่ของตัวแปรหมวดหมู่ที่แตกต่างกันสองตัวในพล็อตเดียว

ตัวอย่างเช่น รหัสต่อไปนี้แสดงวิธีสร้างพล็อตโมเสคที่แสดงความถี่ของตัวแปรหมวดหมู่ “ผลลัพธ์” และ “ทีม” ในพล็อตเดียว:

 #create data frame
df <- data. frame (result = c('W', 'L', 'W', 'W', 'W', 'L', 'W', 'L', 'W', 'L'),
                 team = c('B', 'B', 'B', 'B', 'D', 'A', 'A', 'A', 'C', 'C'),
                 points = c(12, 28, 19, 22, 32, 45, 22, 28, 13, 19),
                 rebounds = c(5, 7, 7, 12, 11, 4, 10, 7, 8, 8))

#create table of counts
counts <- table(df$result, df$team)

#create mosaic plot
mosaicplot(counts, xlab=' Game Result ', ylab=' Team ',
           main=' Wins by Team ', col=' steelblue ') 

ภูมิประเทศโมเสกใน R

แกน x แสดงผลการแข่งขันและแกน y จะแสดงทีมที่แตกต่างกันสี่ทีม

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีสร้างแปลงทั่วไปอื่น ๆ ใน R:

วิธีสร้าง barplot แบบเรียงซ้อนใน R
วิธีสร้าง barplot แบบคลัสเตอร์ใน R
วิธีสร้างพล็อตจุดแบบซ้อนใน R

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *