วิธีจัดเรียงคอลัมน์ใหม่ใน r


บ่อยครั้งที่คุณอาจต้องการจัดเรียงคอลัมน์ใหม่ในกรอบข้อมูลใน R

โชคดีที่ทำได้ง่ายโดยใช้ฟังก์ชัน select() จากแพ็คเกจ dplyr

 library (dplyr)

บทช่วยสอนนี้แสดงตัวอย่างต่างๆ ของวิธีใช้ฟังก์ชันนี้ในทางปฏิบัติโดยใช้กรอบข้อมูลต่อไปนี้:

 #create data frame
df <- data.frame(player = c('a', 'b', 'c', 'd', 'e'),
                 position = c('G', 'F', 'F', 'G', 'G'),
                 points = c(12, 15, 19, 22, 32),
                 rebounds = c(5, 7, 7, 12, 11))

#view data frame
df

  player position points rebounds
1 to G 12 5
2 b F 15 7
3 c F 19 7
4 d G 22 12
5th G 32 11

ตัวอย่างที่ 1: ย้ายคอลัมน์ไปยังตำแหน่งแรก

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

 #move column 'points' to first position
df %>% select(points, everything() )

  points player position rebounds
1 12 a G 5
2 15 b F 7
3 19 c F 7
4 22 d G 12
5 32nd G 11

โค้ดนี้บอกให้ dplyr เลือกคอลัมน์ point ก่อน จากนั้นจึงรวมคอลัมน์อื่นๆ ทั้งหมดไว้หลัง point

ตัวอย่างที่ 2: ย้ายคอลัมน์ไปยังตำแหน่งสุดท้าย

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

 #move column 'points' to last position
df %>% select(-points, points)

  player position rebounds points
1 to G 5 12
2 b F 7 15
3c F 7 19
4 d G 12 22
5th G 11 32

รหัสนี้บอกให้ dplyr เลือกคอลัมน์ทั้งหมด ยกเว้น คอลัมน์ point จากนั้นเลือกคอลัมน์ point อีกครั้ง สิ่งนี้มีผลในการย้ายคอลัมน์ของจุดไปยังตำแหน่งสุดท้ายในกรอบข้อมูล

ตัวอย่างที่ 3: จัดเรียงหลายคอลัมน์ใหม่

รหัสต่อไปนี้แสดงวิธีการจัดเรียงหลายคอลัมน์ในครั้งเดียวตามลำดับเฉพาะ:

 #change all column names to uppercase
df %>% select(rebounds, position, points, player)

  rebounds position points player
1 5 G 12 a
2 7 F 15 b
3 7 F 19 c
4 12 G 22 d
5 11 G 32 e

ตัวอย่างที่ 4: จัดเรียงคอลัมน์ใหม่ตามตัวอักษร

รหัสต่อไปนี้แสดงวิธีการเรียงลำดับคอลัมน์ตามตัวอักษร:

 #order columns alphabetically
df %>% select(order(colnames(.)))

  player points position rebounds
1 to 12 G 5
2 b 15 F 7
3 c 19 F 7
4 d 22 G 12
5 th 32 G 11

ตัวอย่างที่ 5: ลำดับย้อนกลับของคอลัมน์

รหัสต่อไปนี้แสดงวิธีการกลับลำดับของคอลัมน์ในกรอบข้อมูล:

 #reverse column order
df %>% select(rebounds:player, everything() )

  rebound points position player
1 5 12 G a
2 7 15 F b
3 7 19 F c
4 12 22 L d
5 11 32 G e

หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มสำหรับฟังก์ชัน select() ได้ ที่นี่

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

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

วิธีเลือกคอลัมน์ตามดัชนีโดยใช้ dplyr
วิธีเลือกคอลัมน์ตามชื่อโดยใช้ dplyr
วิธีเพิ่มคอลัมน์ใน data frame โดยใช้ dplyr

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

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