Pandas: ลบคอลัมน์หากชื่อมีสตริงเฉพาะ
คุณสามารถใช้วิธีการต่อไปนี้เพื่อลบคอลัมน์ออกจาก DataFrame แพนด้าที่มีชื่อประกอบด้วยสตริงเฉพาะ:
วิธีที่ 1: เอาคอลัมน์ออกถ้าชื่อมีสตริงเฉพาะ
df. drop (list(df. filter (regex=' this_string ')), axis= 1 , inplace= True )
วิธีที่ 2: เอาคอลัมน์ออกถ้าชื่อมีสายอักขระเฉพาะตัวใดตัวหนึ่ง
df. drop (list(df. filter (regex=' string1|string2|string3 ')), axis= 1 , inplace= True )
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติกับ Pandas DataFrame ต่อไปนี้:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team_name ': ['A', 'B', 'C', 'D', 'E', 'F'], ' team_location ': ['AU', 'AU', 'EU', 'EU', 'AU', 'EU'], ' player_name ': ['Andy', 'Bob', 'Chad', 'Dan', 'Ed', 'Fran'], ' points ': [22, 29, 35, 30, 18, 12]}) #view DataFrame print (df) team_name team_location player_name points 0 A AU Andy 22 1 B AU Bob 29 2 C EU Chad 35 3 D EU Dan 30 4 E TO Ed 18 5 F EU Fran 12
ตัวอย่างที่ 1: ลบคอลัมน์หากชื่อมีสตริงเฉพาะ
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อลบคอลัมน์ใด ๆ ออกจาก DataFrame ที่มี “ทีม” ที่ใดก็ได้ในชื่อคอลัมน์:
#drop columns whose name contains 'team' df. drop (list(df. filter (regex=' team ')), axis= 1 , inplace= True ) #view updated DataFrame print (df) player_name points 0 Andy 22 1 Bob 29 2 Chad 35 3 Dan 30 4 Ed 18 5 Fran 12
โปรดทราบว่าทั้งสองคอลัมน์ที่มี “ทีม” ในชื่อได้ถูกลบออกจาก DataFrame
ตัวอย่างที่ 2: ลบคอลัมน์หากชื่อมีสตริงเฉพาะรายการใดรายการหนึ่ง
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อลบคอลัมน์ใด ๆ ออกจาก DataFrame ที่มี “ผู้เล่น” หรือ “คะแนน” ที่ใดก็ได้ในชื่อคอลัมน์:
#drop columns whose name contains 'player' or 'points' df. drop (list(df. filter (regex=' player|points ')), axis= 1 , inplace= True ) #view updated DataFrame print (df) team_name team_location 0 A AU 1 B AU 2 C EU 3D EU 4 E AU 5 F EU
โปรดทราบว่าทั้งสองคอลัมน์ที่มี “ผู้เล่น” หรือ “คะแนน” ในชื่อได้ถูกลบออกจาก DataFrame
หมายเหตุ : | สัญลักษณ์ในรูปแพนด้าใช้เป็นตัวดำเนินการ “OR”
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ในแพนด้า:
วิธีลบคอลัมน์แรกใน Pandas
วิธีลบคอลัมน์ที่ซ้ำกันใน Pandas
วิธีลบคอลัมน์ทั้งหมดยกเว้นบางคอลัมน์ใน Pandas