Мне нужно удалить строки в pandas, которые удовлетворяют условию

#python #dataset #data-science

#python #набор данных #наука о данных

Вопрос:

У меня есть набор данных pandas, и мне нужно удалить все строки.

Все строки, которые имеют определенную строку в столбце «жанр».

Проблема в том, что все значения в этом столбце представляют собой строку из списка жанров.

введите описание изображения здесь

Эта строка работает, но удаляет только строки, где ‘Hentai’ является единственным значением.

введите описание изображения здесь

Комментарии:

1. Вы должны предоставить то, что вы пробовали до сих пор.

Ответ №1:

Вы можете использовать оператор «in», чтобы проверить, находится ли «хентай» в «жанре».

 for x in range(0,len(df)):
    if 'Hentai' in df.iloc[x,2]:
        df = df.drop([x],axis=0)
  

Комментарии:

1. Я уже пробовал, но это привело к множеству ключевых ошибок

2. Не могли бы вы проверить мой комментарий? Я предоставил ответ.

Ответ №2:

Не отвечайте, я нахожу решение:

 f = df[~df.genre.str.contains("Hentai", na=False)]
  

na Аргумент необходим для пропуска пустых значений, потому что в противном случае Python может выдать ошибку :

Ошибка типа: неверный тип операнда для унарного ~: ‘float’

Комментарии:

1. @ Unico_rn-de если вы хотите, чтобы люди больше не отвечали, пожалуйста, нажмите кнопку «Принять» (отметьте галочкой). Это позволит пользователям узнать, что вы нашли свой ответ и больше не ищете