วิธีเพิ่มระดับใหม่เพื่อแยกตัวประกอบใน r (พร้อมตัวอย่าง)


คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อเพิ่มระดับใหม่ให้กับตัวแปรตัวประกอบใน R:

 levels(df$my_factor) <- c(levels(df$my_factor), ' new_level ')

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่าง: เพิ่มระดับใหม่ให้กับปัจจัยใน R

สมมติว่าเรามีกรอบข้อมูลต่อไปนี้ใน R ที่แสดงจำนวนยอดขายในภูมิภาคต่างๆ สำหรับร้านค้าปลีก:

 #create data frame
df <- data. frame (region=factor(c('A', 'B', NA, 'D', NA, 'F')),
                 sales=c(12, 18, 21, 14, 34, 40))

#view data frame
df

  regional sales
1 to 12
2 B 18
3 <NA> 21
4 D 14
5 <NA> 34
6 F 40

โปรดทราบว่าตัวแปร ภูมิภาค เป็นปัจจัย

เพื่อให้เห็นภาพระดับของปัจจัยนี้ เราสามารถใช้ ฟังก์ชันระดับ() :

 #view factor levels for region
levels(df$region)

[1] “A” “B” “D” “F”

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อเพิ่มระดับปัจจัยใหม่ที่เรียกว่า “ไม่มีภูมิภาค”:

 #add factor level called 'no region'
levels(df$region) <- c(levels(df$region), ' no region ')

#convert each NA to 'no region'
df$region[is. na (df$region)] <- ' no region '

#view factor levels for region
levels(df$region)

[1] “A” “B” “D” “F” “no region”

มีการเพิ่มระดับใหม่ที่เรียกว่า “ไม่มีภูมิภาค” เป็นระดับปัจจัย

หากต้องการ เราสามารถใช้ฟังก์ชัน table() เพื่อนับการเกิดขึ้นของแต่ละระดับปัจจัยได้:

 #view occurrences of each factor level
table(df$region)

ABDF no region 
1 1 1 1 2 

จากผลลัพธ์ เราจะเห็นว่าระดับปัจจัยใหม่ที่เรียกว่า “ไม่มีภูมิภาค” ปรากฏขึ้นสองครั้งในคอลัมน์ ขอบเขต ของกรอบข้อมูล

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

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

วิธีแปลงปัจจัยเป็นตัวเลขใน R
วิธีแปลงปัจจัยเป็นอักขระใน R
วิธีจัดเรียงระดับแฟคเตอร์ใหม่ใน R

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

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