у меня есть Д.Ф., и я хочу, чтобы запустить что-то вроде:Выбор строки в dataframe на основе двух условий панды питона
subsetdf= df.loc[(df['Item_Desc'].str.contains('X')==True) or \
(df['Item_Desc'].str.contains('Y')==True),:]
, который выбирает все строки, которые имеют этот пункт DESc столбец подстроку «X "или" Y ".
The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
Я получаю сообщение об ошибке, когда я запускаю его. Любая помощь?
Не могли бы вы направить меня на документы для этого? Это вещь панды или вещь питона? Я ничего не мог найти о «|» – robertevansanders
@joris, хороший ответ. Есть ли более общий способ? например если у вас есть список имен столбцов, например. '['d1', 'd2', 'd3' ...]' есть способ указать общее условие для применения ко всем и включить строку, если какой-либо из них соответствует. В моем случае cols d1 и т. Д. Имеют 1 или 0 и хотят только строки с 1 в любом из столбцов d1 и т. Д. Существуют и другие cols, с другими данными, например. текст, который я не рассматриваю для этого выбора –
Не общее решение, но в этом случае вы можете сделать что-то вроде '(df [cols] == 1) .any (axis = 1)' для использования в качестве условия. – joris