используйте re для условного среза - PullRequest
0 голосов
/ 09 апреля 2020

Я искал несколько сообщений об условном нарезании, к сожалению, я не нашел ни одного, пока работал для моего вопроса. Пожалуйста, исправьте меня, если я ошибаюсь.

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

Я создал test_data, как показано ниже:

    test_data=pd.DataFrame({
    'name': ['conference','company']
    })

В результате я хочу получить всего одну строку, «company» в столбце «name».

Функция, которую я написал, как показано ниже, выполняла логическое выражение для каждой строки столбца «name»:

    def ifConference(x):
        if re.search('conference', x, re.IGNORECASE) is None:
        print('True')

Результат должен дать мне строку 1, однако было очевидно, что я этого не делал правильно:

test_data[test_data.apply(lambda x: ifConference(x.name)).index]

Он напечатал «True», а затем вывел исходный фрейм данных, строка 0 - «конференция», а строка 1 - «компания». Любая помощь будет высоко ценится! Спасибо за внимание!

...