Pandas: cara memfilter baris yang berisi string tertentu
Anda dapat menggunakan sintaks berikut untuk memfilter baris yang berisi string tertentu di pandas DataFrame:
df[df[" col "]. str . contains (“ this string ”)]
Tutorial ini menjelaskan beberapa contoh penggunaan praktis sintaks ini dengan DataFrame berikut:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'C'], ' conference ': ['East', 'East', 'East', 'West', 'West', 'East'], ' points ': [11, 8, 10, 6, 6, 5]}) #view DataFrame df team conference points 0 A East 11 1 A East 8 2 A East 10 3 B West 6 4 B West 6 5 C East 5
Contoh 1: Filter baris yang berisi string tertentu
Kode berikut memperlihatkan cara memfilter baris di DataFrame yang berisi “A” di kolom tim:
df[df[" team "]. str . contains (“ A ”)] team conference points 0 A East 11 1 A East 8 2 A East 10
Hanya baris yang kolom timnya berisi ‘A’ yang disimpan.
Contoh 2: Filter baris yang berisi string dalam daftar
Kode berikut memperlihatkan cara memfilter baris di DataFrame yang berisi “A” atau “B” di kolom tim:
df[df[" team "]. str . contains (“ A|B ”)] team conference points 0 A East 11 1 A East 8 2 A East 10 3 B West 6 4 B West 6
Hanya baris yang kolom timnya berisi ‘A’ atau ‘B’ yang disimpan.
Contoh 3: Filter baris yang berisi sebagian string
Pada contoh sebelumnya, kita memfilter berdasarkan baris yang sama persis dengan satu atau lebih string.
Namun, jika kita ingin memfilter baris yang berisi sebagian string, kita dapat menggunakan sintaks berikut:
#identify partial string to look for keep=[" Wes "] #filter for rows that contain the partial string "Wes" in the conference column df[df. conference . str . contains (' | ' .join (keep))] team conference points 3 B West 6 4 B West 6
Hanya baris di mana kolom konferensi berisi “Wes” yang disimpan.
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di panda:
Cara menghapus baris di Pandas DataFrame berdasarkan kondisi
Cara memfilter Pandas DataFrame pada berbagai kondisi
Cara menggunakan filter “TIDAK DALAM” di Pandas DataFrame