Mam pandas DataFrame i chcę usunąć z niego wiersze, w których długość ciągu znaków w danej kolumnie jest większa niż 2. Wiem, że mogę użyć df.dropna()
pozbyć się wierszy zawierających dowolny kod NaN
, ale nie widzę sposobu usuwania wierszy w oparciu o wyrażenie warunkowe.Jak usunąć wiersze z pandy DataFrame w oparciu o wyrażenie warunkowe
Odpowiedź na this question wydaje się bardzo blisko tego, co chcę - wydaje się, że powinienem być w stanie zrobić coś takiego:
df[(len(df['column name']) < 2)]
ale po prostu pojawia się błąd:
KeyError: u'no item named False'
Czy ktoś może mi powiedzieć, co robię źle?
wymyśliłem sposób, używając wyrażeń listowych: 'df [[(len (x) <2) for x in df [ 'nazwa kolumny' ]]] 'ale twoja jest o wiele ładniejsza. Dzięki za pomoc! – sjs