Pandas

Pandas: как удалить строки, содержащие определенную строку

В: Pandas

Вы можете использовать следующий синтаксис для удаления строк, содержащих определенную строку в кадре данных pandas:

df[df["col"].str.contains("this string")== False ]**

В этом руководстве объясняется несколько примеров использования этого синтаксиса на практике со следующим кадром данных:

import pandas as pd

#create DataFrame
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

Пример 1. Удаление строк, содержащих определенную строку

В следующем коде показано, как удалить все строки в DataFrame, содержащие «A» в столбце команды:

df[df["team"].str.contains("A")== False ]

# team conference points
#3 B West 6
#4 B West 6
#5 C East 5**

Пример 2. Удаление строк, содержащих строку в списке

В следующем коде показано, как удалить все строки в DataFrame, содержащие «A» или «B» в столбце команды:

df[df["team"].str.contains("A|B")== False]

# team conference points
#5 C East 5**

Пример 3. Удаление строк, содержащих неполную строку

В предыдущих примерах мы отбрасывали строки на основе строк, которые точно соответствовали одной или нескольким строкам.

Однако, если мы хотим удалить строки, содержащие неполную строку, мы можем использовать следующий синтаксис:

#identify partial string to look for
discard = ["Wes"]

#drop rows that contain the partial string "Wes" in the conference column
df[~df.conference.str.contains('|'.join(discard))]

#team conference points
#0 A East 11
#1 A East 8
#2 A East 10
#5 C East 5**

Вы можете найти больше руководств по pandas на этой странице .

Еще от кодкамп
Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.