Ich bin sehr neu in Pandas und hoffe, dass mir zumindest jemand in die richtige Richtung zeigen kann.Filter Datenrahmen von Werten in verschiedenen Spalten Pandas
Hier kommt die eigentliche Frage:
df:
time Area lon lat mode ID
1993-08-01 00:34:28 A 45.627800 34.733400 false 3183
1993-08-01 00:34:28 A 45.699600 34.639300 false 3183
1993-08-01 00:34:28 A 45.603800 34.730600 false 3183
1992-03-21 01:13:18 A 45.686400 34.548100 false 3184
1992-03-21 01:13:18 A 45.702400 34.554300 false 3184
1992-03-21 01:13:18 B 45.304784 34.626540 NaN 3184
1992-03-21 16:13:20 A 45.633800 34.709700 false 3185
1992-03-21 16:13:20 A 45.643400 34.709000 true 3185
1992-03-21 16:13:20 A 45.634600 34.959500 true 3185
Ich möchte alle Instanzen 'ID', um herauszufiltern, die nur Daten von einem 'Area' hat (entweder A oder B). Die ‚ID‘ s Ich möchte muss also mindestens eine Instanz von ‚A‘UND‚B‘ in einem neuen Datenrahmen gespeichert werden.
Von df präsentierte unten nach oben nur das entires präsentiert paßt die constrain:
1992-03-21 01:13:18 A 45.686400 34.548100 false 3184
1992-03-21 01:13:18 A 45.702400 34.554300 false 3184
1992-03-21 01:13:18 B 45.304784 34.626540 NaN 3184
Gerade jetzt, um zu versuchen Ich bin über einen regelmäßigen for-Schleife mit if-Anweisungen und eine Liste zu Zwischenspeichern ‚Area zu tun ' Attribute für jede ' ID '. Das fühlt sich wie eine sehr schlechte Herangehensweise an und es muss einige idiomatische Pandas geben.
Warum in der Ausgabe fehlt '1992-03-21 01:13:18 A 45.686400 34.548100 false 3184'? – jezrael
Ich verstehe nicht, was du meinst? Die letzten zwei Zeilen sind die gewünschten, da sie die einzigen Einträge sind, die eine eindeutige 'ID' teilen und sowohl Bereich A als auch B – PigFoot
Hmm enthalten, aber Bereich 'A' hat zwei Reihen mit 'ID = 3184' und 'B' einziger. Also warum in der Ausgabe ist nur eine Zeile aus der Kategorie "A" und nicht beide wie in meiner Antwort unten? – jezrael