Dplyr: วิธีเปลี่ยนระดับแฟคเตอร์โดยใช้ mutate()
คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้ใน dplyr เพื่อเปลี่ยนระดับของตัวแปรตัวประกอบโดยใช้ฟังก์ชัน mutate() :
library (dplyr) df <- df %>% mutate(team=recode(team, ' H ' = ' Hawks ', ' M ' = ' Mavs ', ' C ' = ' Cavs '))
ไวยากรณ์เฉพาะนี้ทำให้เกิดการเปลี่ยนแปลงต่อไปนี้กับตัวแปร ทีม ในกรอบข้อมูล:
- ‘H’ กลายเป็น ‘เหยี่ยว’
- ‘M’ กลายเป็น ‘Mavs’
- ‘C’ กลายเป็น ‘Cavs’
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: เปลี่ยนระดับปัจจัยโดยใช้ mutate()
สมมติว่าเรามีกรอบข้อมูลต่อไปนี้ใน R ซึ่งมีข้อมูลเกี่ยวกับผู้เล่นบาสเกตบอลต่างๆ:
#create data frame df <- data. frame (team=factor(c('H', 'H', 'M', 'M', 'C', 'C')), dots=c(22, 35, 19, 15, 29, 23)) #view data frame df team points 1:22 a.m. 2:35 a.m. 3 M 19 4 M 15 5 C 29 6 C 23
เราสามารถใช้ไวยากรณ์ต่อไปนี้กับฟังก์ชัน mutate() ของแพ็คเกจ dplyr เพื่อเปลี่ยนระดับของตัวแปร ทีม :
library (dplyr) #change factor levels of team variable df <- df %>% mutate(team=recode(team, ' H ' = ' Hawks ', ' M ' = ' Mavs ', ' C ' = ' Cavs ')) #view updated data frame df team points 1 Hawks 22 2 Hawks 35 3 Mavs 19 4 Mavs 15 5 Cavs 29 6 Cavs 23
การใช้ไวยากรณ์นี้ทำให้เราสามารถทำการ เปลี่ยนแปลงต่อไปนี้กับตัวแปร ทีม ในกรอบข้อมูล:
- ‘H’ กลายเป็น ‘เหยี่ยว’
- ‘M’ กลายเป็น ‘Mavs’
- ‘C’ กลายเป็น ‘Cavs’
เราสามารถตรวจสอบได้ว่าระดับปัจจัยมีการเปลี่ยนแปลงโดยใช้ฟังก์ชันระดับ () :
#display factor levels of team variable
levels(df$team)
[1] “Cavs” “Hawks” “Mavs”
โปรดทราบว่าคุณสามารถเลือกเปลี่ยนระดับปัจจัยเพียงระดับเดียวแทนการเปลี่ยนแปลงทั้งหมดได้
ตัวอย่างเช่น เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อแทนที่เฉพาะ “H” ด้วย “Hawks” และปล่อยให้ระดับปัจจัยอื่นๆ ไม่เปลี่ยนแปลง:
library (dplyr) #change one factor level of team variable df <- df %>% mutate(team=recode(team, ' H ' = ' Hawks ')) #view updated data frame df team points 1 Hawks 22 2 Hawks 35 3 M 19 4 M 15 5 C 29 6 C 23
โปรดทราบว่า “H” ถูกแทนที่ด้วย “Hawks” แต่ระดับปัจจัยอีกสองระดับยังคงไม่เปลี่ยนแปลง
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่น ๆ ใน dplyr:
วิธีลบแถวโดยใช้ dplyr
วิธีเลือกคอลัมน์ตามดัชนีโดยใช้ dplyr
วิธีกรองแถวที่มีสตริงบางตัวโดยใช้ dplyr