#python #regex #pandas
Вопрос:
У меня есть следующий фрейм данных
ClientCode FileName
0 123 123--filename
1 234 456--filename
2 345 345--filename
3 456 123--filename
4 567 567--filename
В принципе, мне нужно вернуть строки, в которых кода клиента НЕТ В поле имя файла
Это вернет строки 1,3 в приведенном выше примере
Однако я не знаю, возможно ли это даже с помощью простого выражения в фильтрации панд
Комментарии:
1.
.str.split('--')
и преобразуйте правильный тип dtype2. Я не понимаю, раскол только расколы! он не будет фильтроваться
3. Да, разделить, а потом сравнить?
4. можете ли вы вставить все решение целиком? каким будет выражение фильтрации? разделение str создаст еще один столбец?
Ответ №1:
Используйте это:-
df[~df['ClientCode'].eq(df['FileName'].str.split('--',expand=True)[0].astype(int))]