Выберите, где результат с дополнительной строкой выше с пандами

#python #pandas #dataframe

Вопрос:

Я использую следующее для поиска строки с определенными строками в огромном наборе данных:

 words= ['string1','string2']
string='|'.join(words)
mask=df.stack().str.contains(string).any(level=0)
df=df[mask]
 

Приведенный выше код работает, чтобы дать мне строки, содержащие строки. Я также хотел бы для каждого результата захватить строку над ним. Как я могу сделать это с помощью shift, т. Е. Сохранить результат и строку непосредственно над результатом?

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

1. df[mask|mask.shift(-1)]