วิธีปรับขนาดเฉพาะคอลัมน์ตัวเลขใน r (พร้อมตัวอย่าง)


คุณสามารถใช้ไวยากรณ์ต่อไปนี้จากแพ็คเกจ dplyr เพื่อปรับขนาดเฉพาะคอลัมน์ตัวเลขของกรอบข้อมูลใน R:

 library (dplyr)

df %>% mutate(across(where(is. numeric ), scale))

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

ตัวอย่าง: ปรับขนาดเฉพาะคอลัมน์ตัวเลขโดยใช้ dplyr

สมมติว่าเรามีกรอบข้อมูลต่อไปนี้ใน R ซึ่งมีข้อมูลเกี่ยวกับผู้เล่นบาสเกตบอลต่างๆ:

 #create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                 dots=c(22, 34, 30, 12, 18),
                 assists=c(7, 9, 9, 12, 14),
                 rebounds=c(5, 10, 10, 8, 8))

#view data frame
df

  team points assists rebounds
1 to 22 7 5
2 B 34 9 10
3 C 30 9 10
4 D 12 12 8
5 E 18 14 8

สมมติว่าเราต้องการใช้ฟังก์ชัน มาตราส่วน ใน R เพื่อปรับขนาดเฉพาะคอลัมน์ตัวเลขของกรอบข้อมูล

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อทำสิ่งนี้:

 library (dplyr)

#scale only the numeric columns in the data frame
df %>% mutate(across(where(is. numeric ), scale))

  team points assists rebounds
1 A -0.1348400 -1.153200 -1.56144012
2 B 1.2135598 -0.432450 0.87831007
3 C 0.7640932 -0.432450 0.87831007
4 D -1.2585064 0.648675 -0.09759001
5 E -0.5843065 1.369425 -0.09759001

โปรดทราบว่าค่าในคอลัมน์ตัวเลขทั้งสาม ( คะแนน , แอสซิสต์ และ รีบาวด์ ) ได้รับการปรับขนาดในขณะที่คอลัมน์ ทีม ยังคงไม่เปลี่ยนแปลง

หมายเหตุทางเทคนิค

ฟังก์ชัน scale() ใน R ใช้ไวยากรณ์พื้นฐานต่อไปนี้:

 scale(x, center = TRUE , scale = TRUE )

ทอง:

  • x : ชื่อของวัตถุที่จะปรับขนาด
  • center : ว่าจะลบค่าเฉลี่ยเมื่อทำการปรับขนาดหรือไม่ ค่าเริ่มต้นคือ TRUE
  • scale : ว่าจะหารด้วยส่วนเบี่ยงเบนมาตรฐานหรือไม่เมื่อทำการปรับขนาด ค่าเริ่มต้นคือ TRUE

ฟังก์ชันนี้ใช้สูตรต่อไปนี้ในการคำนวณค่ามาตราส่วน:

สเกล x = ( เดิม x – x̄) / s

ทอง:

  • original x : ค่า x ดั้งเดิม
  • : ตัวอย่างหมายถึง
  • s : ค่าเบี่ยงเบนมาตรฐานของกลุ่มตัวอย่าง

สิ่งนี้เรียกอีกอย่างว่า การทำให้ ข้อมูลเป็นมาตรฐาน ซึ่งจะแปลงค่าดั้งเดิมแต่ละค่าให้เป็น คะแนน z

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

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

วิธีเลือกคอลัมน์ตามชื่อโดยใช้ dplyr
วิธีเลือกคอลัมน์ตามดัชนีโดยใช้ dplyr
วิธีใช้ select_if กับหลายเงื่อนไขใน dplyr

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

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