Es ist so, wenn Sie zuerst die Schlussfolgerung schreiben.
df3 = df1[~df1['row1'].isin(df2['row2'])]
Aus einem Datenrahmen df1 Die Spalte 'Zeile1' des Datenrahmens und Vergleichen Sie die Spalte 'Zeile 2' des zu vergleichenden Datenrahmens df2. Ich möchte eine Zeile aus df1 extrahieren, deren Zeile1 in Zeile2 nicht vorhanden ist.
Es ist so, wenn es in SQL geschrieben ist.
SELECT * FROM df1
WHER df1.row1 NOT IN (SELECT row2 FROM df2)
Daten von df1
color | row1 |
---|---|
red | eagle |
blue | shark |
yellow | lion |
green | elephant |
white | tiger |
black | world |
df2 Daten
name | row2 |
---|---|
Sela | shark |
Leo | lion |
Tusk | elephant |
Amu | tiger |
Daten, die Sie von df1 abrufen möchten
color | row1 |
---|---|
red | eagle |
black | world |
Zyuohger.py
import pandas as pd
df1 = pd.DataFrame({
'color':['red', 'blue', 'yellow','green', 'white','black',],
'row1' :['eagle','shark','lion', 'elephant','tiger','world',],
})
df2 = pd.DataFrame({
'name':['Sela', 'Leo', 'Tusk', 'Amu',],
'row2':['shark','lion','elephant','tiger',],
})
df3 = df1[~df1['row1'].isin(df2['row2'])]
print df3
Bei der Ausführung ist dies wie folgt.
$ python Zyuohger.py
color row1
0 red eagle
5 black world
Recommended Posts