ตอบ: วิธีลบคอลัมน์ทั้งหมดยกเว้นบางคอลัมน์
คุณสามารถใช้วิธีการต่อไปนี้เพื่อลบทั้งหมดยกเว้นบางคอลัมน์ออกจากกรอบข้อมูลใน R:
วิธีที่ 1: ใช้ Base R
df <- df[c(' col2 ', ' col6 ')]
วิธีที่ 2: ใช้ dplyr
library (dplyr)
df <- df %>% select(col2, col6)
ทั้งสองวิธีลบคอลัมน์ทั้งหมดออกจาก data frame ยกเว้นคอลัมน์ที่เรียกว่า col2 และ col6
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติกับกรอบข้อมูลต่อไปนี้ใน R:
#create data frame df <- data. frame (team=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'), points=c(18, 22, 19, 14, 14, 11, 20, 28), assists=c(5, 7, 7, 9, 12, 9, 9, 4), rebounds=c(11, 8, 10, 6, 6, 5, 9, 12), steals=c(4, 3, 3, 2, 5, 4, 3, 8), blocks=c(1, 0, 0, 3, 2, 2, 1, 5)) #view data frame df team points assists rebounds steals blocks 1 A 18 5 11 4 1 2 B 22 7 8 3 0 3 C 19 7 10 3 0 4 D 14 9 6 2 3 5 E 14 12 6 5 2 6 F 11 9 5 4 2 7 G 20 9 9 3 1 8:28 4 12 8 5
ตัวอย่างที่ 1: ลบคอลัมน์ทั้งหมดยกเว้นคอลัมน์เฉพาะโดยใช้ Base R
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อลบคอลัมน์ทั้งหมดออกจากกรอบข้อมูล ยกเว้นคอลัมน์ที่เรียกว่า จุด และ บล็อก :
#drop all columns except points and blocks
df <- df[c(' points ', ' blocks ')]
#view updated data frame
df
point blocks
1 18 1
2 22 0
3 19 0
4 14 3
5 14 2
6 11 2
7 20 1
8 28 5
โปรดทราบว่าจะเหลือเพียงคอลัมน์ จุด และ บล็อก เท่านั้น
คอลัมน์อื่นๆ ทั้งหมดถูกลบออกแล้ว
ตัวอย่างที่ 2: ลบคอลัมน์ทั้งหมด ยกเว้นบางคอลัมน์ที่ใช้ dplyr
นอกจากนี้เรายังสามารถใช้ฟังก์ชัน select() จากแพ็คเกจ dplyr เพื่อลบคอลัมน์ทั้งหมดออกจาก data frame ยกเว้นคอลัมน์ที่เรียกว่า point และ block :
library (dplyr)
#drop all columns except points and blocks
df <- df %>% select(points, blocks)
#view updated data frame
df
point blocks
1 18 1
2 22 0
3 19 0
4 14 3
5 14 2
6 11 2
7 20 1
8 28 5
โปรดทราบว่าจะเหลือเพียงคอลัมน์ จุด และ บล็อก เท่านั้น
ซึ่งตรงกับผลลัพธ์ของตัวอย่างก่อนหน้า
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน R:
วิธีลบคอลัมน์หากชื่อมีสตริงเฉพาะใน R
วิธีลบหลายคอลัมน์โดยใช้ dplyr
วิธีลบคอลัมน์ที่มีค่า NA ใน R