2017-05-25 3 views
1

Gegeben:Wählen Sie Werte basierend auf einer variablen Anzahl von Kriterium

  • ein Datensatz;

  • Attribute von diesem Daten-Set (ex Geschlecht, Bildungsniveau, etc.)

Ich brauche alle möglichen Werte von Geschlecht und Bildungsniveau zu finden: ex (männlich, Bachelor).

Ich habe bereits eine Liste dieser Tupel erstellt.

Jetzt möchte ich zurück in den Datensatz und wählen Sie die Zeilen, die diese spezifischen Werte für Geschlecht und Bildungsniveau und einige andere Attribute haben.

df1 = df[df['gender'] = 'Male' & df['education level'] = 'Bachelors'] 

aber für alle möglichen Werte der Attribute.

Antwort

0

Ihre Liste von Tupeln Unter der Annahme sind in einer Variablen namens tups

df.set_index(['gender', 'education']).loc[tups].reset_index() 

Oder

t = pd.Series(list(zip(df.gender, df.education)), df.index) 
df[t.isin(tups)] 

Wir können es mit

g = df.gender.values.tolist() 
e = df.education.values.tolist() 
z = list(zip(g, e)) 
s = pd.Series(z, df.index) 
df[s.isin(tups)] 
Geschwindigkeit
Verwandte Themen