Ich versuche, Zeilen aus einem df basierend auf mehreren Bedingungen zu extrahieren, müssen alle Bedingungen erfüllt sein, bevor irgendwelche Zeilen ausgewählt werden, sonst nichts.Get Unterabschnitt von df basierend auf mehreren Bedingungen
Mein df
columns = ['is_net', 'is_pct', 'is_mean', 'is_wgted', 'is_sum']
index = ['a','b','c','d']
data = [['True','True','False','False', 'False'],
['True','True','True','False', 'False'],
['True','True','False','False', 'True'],
['True','True','False','True', 'False']]
df = pd.DataFrame(columns=columns, index=index, data=data)
df
is_net is_pct is_mean is_wgted is_sum
a True True False False False
b True True True False False
c True True False False True
d True True False True False
Meine Bedingungen, die in diesem Format vorliegen:
conditions = {'is_net': 'True',
'is_pct': 'True',
'is_mean': 'False',
'is_wgted': 'True',
'is_sum': 'False'}
Erwartete Ausgabe:
is_net is_pct is_mean is_wgted is_sum
d True True False True False
Fragen Sie, wie man Bedingungen kombiniert (z.B. 'df [df.is_net & df.is_pct & ...]'? Oder fragen Sie sich, wie Sie Zeilen finden, in denen alle beliebig vielen booleschen Spalten True sind? –
wo die ganze Anzahl boolescher Spalten mit der Variablen 'conditions' übereinstimmt –
Beiseite: Da Booleans ein nativ unterstützter Typ sind, wird die Verwendung von * string * True und False zu Verwirrung führen, weil 'True! = 'True''. – DSM