Как применить функцию фильтра в фрейме данных для символа ‘?’

#python #dataframe #filter

#python #фрейм данных #Фильтр

Вопрос:

Как отфильтровать символ, подобный «?», в функции фильтра фрейма данных, например: df_new = df[df.filter( regex='?',axis=1)] это дает все элементы во фрейме данных (df)

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

1. regex='.*?.*' будет соответствовать всем строкам, содержащим ‘?’

2. Также вы пробовали: pandas.pydata.org/pandas-docs/stable/reference/api /…

Ответ №1:

Это типичный случай, когда символ, который вы хотите найти, уже используется в регулярных выражениях в качестве оператора и должен быть «экранирован» (т. Е. Вы должны четко указать, что вам нужен буквенно-цифровой символ, а не оператор).

В большинстве языков вам просто нужно добавить обратную косую черту ( '' ) перед символом. Следовательно, если вы ищете '?' , вы должны сделать:

 df_new = df[df.filter(regex='?',axis=1)]