วิธีเลือกคอลัมน์ที่ไม่ได้ขึ้นต้นด้วยสตริงใน dplyr


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

วิธีที่ 1: เลือกคอลัมน์ที่ไม่ได้ขึ้นต้นด้วยสตริงเฉพาะ

 df %>%
  select(-starts_with(" string1 "))

วิธีที่ 2: เลือกคอลัมน์ที่ไม่ได้ขึ้นต้นด้วยสตริงใดสตริงหนึ่ง

 df %>%
  select(-starts_with(c(" string1 ", " string2 ", " string3 ")))

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

 #create data frame
df <- data. frame (store1_sales=c(12, 10, 14, 19, 22, 25, 29),
                 store1_returns=c(3, 3, 2, 4, 3, 2, 1),
                 store2_sales=c(8, 8, 12, 14, 15, 13, 12),
                 store2_returns=c(1, 2, 2, 1, 2, 1, 3),
                 promotions=c(0, 1, 1, 1, 0, 0, 1))

#view data frame
df

  store1_sales store1_returns store2_sales store2_returns promotions
1 12 3 8 1 0
2 10 3 8 2 1
3 14 2 12 2 1
4 19 4 14 1 1
5 22 3 15 2 0
6 25 2 13 1 0
7 29 1 12 3 1

ตัวอย่างที่ 1: เลือกคอลัมน์ที่ไม่ได้ขึ้นต้นด้วยสตริงเฉพาะ

รหัสต่อไปนี้แสดงวิธีใช้ฟังก์ชัน -starts_with() เพื่อเลือกเฉพาะคอลัมน์ที่ไม่ได้ขึ้นต้นด้วย “store1” ในกรอบข้อมูล:

 library (dplyr)

#select all columns that do not start with "store1"
df %>%
  select(-starts_with(" store1 "))

  store2_sales store2_returns promotions
1 8 1 0
2 8 2 1
3 12 2 1
4 14 1 1
5 15 2 0
6 13 1 0
7 12 3 1

โปรดทราบว่าทั้งสองคอลัมน์ที่ขึ้นต้นด้วย “store1” จะไม่ถูกส่งกลับ

ตัวอย่างที่ 2: เลือกคอลัมน์ที่ไม่ได้ขึ้นต้นด้วยหนึ่งในหลายสตริง

รหัสต่อไปนี้แสดงวิธีใช้ฟังก์ชัน -starts_with() เพื่อเลือกเฉพาะคอลัมน์ที่ไม่ได้ขึ้นต้นด้วย “store1” หรือ “prom” ในกรอบข้อมูล:

 library (dplyr)

#select all columns that do not start with "store1" or "prom"
df %>%
  select(-starts_with(c(" store1 ", " prom ")))

  store2_sales store2_returns
1 8 1
2 8 2
3 12 2
4 14 1
5 15 2
6 13 1
7 12 3

โปรดทราบว่าคอลัมน์ที่ขึ้นต้นด้วย “store1” หรือ “prom” จะไม่ถูกส่งกลับ

หมายเหตุ : ตามค่าเริ่มต้น ฟังก์ชัน start_with() จะไม่คำนึงถึงขนาดตัวพิมพ์ หากต้องการทำให้ฟังก์ชันคำนึงถึงขนาดตัวพิมพ์ ให้ใช้ อาร์กิวเมนต์ ไม่สนใจกรณี=FALSE ในฟังก์ชัน

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

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

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

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

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