Pandy: jak filtrować wiersze zawierające określony ciąg znaków


Możesz użyć następującej składni, aby filtrować wiersze zawierające określony ciąg w ramce DataFrame pandy:

 df[df[" col "]. str . contains (“ this string ”)]

W tym samouczku wyjaśniono kilka przykładów praktycznego użycia tej składni w następującej ramce DataFrame:

 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

Przykład 1: Filtruj wiersze zawierające określony ciąg

Poniższy kod pokazuje, jak filtrować wiersze w ramce danych zawierające literę „A” w kolumnie zespołu:

 df[df[" team "]. str . contains (“ A ”)]

	team conference points
0 A East 11
1 A East 8
2 A East 10

Zachowane zostaną tylko linie, których kolumna zespołu zawiera literę „A”.

Przykład 2: Filtruj wiersze zawierające ciąg na liście

Poniższy kod pokazuje, jak filtrować wiersze w ramce danych zawierające „A” lub „B” w kolumnie zespołu:

 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

Zachowane zostaną tylko linie, których kolumna zespołu zawiera „A” lub „B”.

Przykład 3: Filtruj wiersze zawierające częściowy ciąg znaków

W poprzednich przykładach filtrowaliśmy na podstawie wierszy, które dokładnie pasują do jednego lub większej liczby ciągów.

Jeśli jednak chcemy filtrować wiersze zawierające częściowy ciąg znaków, możemy zastosować następującą składnię:

 #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

Zachowane zostaną tylko wiersze, w których kolumna konferencji zawiera „Wes”.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje na pandach:

Jak usunąć wiersze w Pandas DataFrame na podstawie warunku
Jak filtrować ramkę danych Pandas pod wieloma warunkami
Jak korzystać z filtra „NIE W” w Pandas DataFrame

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *