Pandas DataFrame фильтр str столбец на основе другого столбца - PullRequest
0 голосов
/ 21 января 2019

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

Согласно this 2-year-Старый пост это можно сделать с помощью apply следующим образом:

df = pd.DataFrame({'FNAME': ['Max', 'Tobi'], 'LNAME': ['Foo', 'Tobiwan']})

df.loc[ df.apply(lambda row: row.FNAME in row.LNAME, axis=1) ]

  FNAME    LNAME
1  Tobi  Tobiwan

Мне было интересно, есть ли какой-нибудь встроенный векторизованный способ сделать это?

1 Ответ

0 голосов
/ 21 января 2019

Использование replace

df[df.LNAME.replace(regex=r'(?i)'+ df.FNAME,value=True)==True]
  FNAME    LNAME
1  Tobi  Tobiwan
...