Как проверить, находится ли значение в другом столбце

#python #pandas

#python #панды

Вопрос:

У меня есть этот фрейм данных:

df

Как я могу отфильтровать столбец G, чтобы исключить строки, значение которых находится в столбце C? Результат должен выглядеть следующим образом:

df_updated

Ответ №1:

Попробуйте df.loc с isin ~, который отрицает его

 df.loc[~df['G'].isin(df['C'].unique())]
 

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

1. Сработало!! Я боролся с другой проблемой. Я уже пробовал df.loc раньше, но мой столбец ‘C’ был другого типа (int64), и мне пришлось преобразовать обратно в Object. Спасибо!!

Ответ №2:

В этом случае вы можете использовать маску:

 df_filtered = df[~df['G'].isin(df['C'])]