Ich versuche, für einen Datenrahmen von einem anderen einen 'einfachen' Nachschlag von fehlenden Werten zu tun:Pandas Datenrahmen merge Lookup - mehrere Spalten in Folge
somedict = {'col1':['a1','b2','c3','d4','d5','d6'], 'Col2':['a','b','c','b','e','a'], 'Col3':[33,56,74,55,99,86], 'Col4':['','',3,'',5,'']}
dfa = pd.DataFrame(somedict)
und
otherdic = {'Col2':['a','b'], 'Col4':['NEW', 'ALSONEW']}
dfb = pd.DataFrame(otherdic)
so erhalten ich dfb und DFA:
Col2 Col4
0 a NEW
1 b ALSONEW
Col2 Col3 Col4 col1
0 a 33 a1
1 b 56 b2
2 c 74 3 c3
3 b 55 d4
4 e 99 5 d5
5 a 86 d6
was ich suche ist
Col2 Col3 Col4 col1
0 a 33 NEW a1
1 b 56 ALSONEW b2
2 c 74 3 c3
3 b 55 ALSONEW d4
4 e 99 5 d5
5 a 86 NEW d6
Ich habe versucht:
pd.merge(dfa, dfb, on='Col2', how='left')
die liefert
Col2 Col3 Col4_x col1 Col4_y
0 a 33 a1 NEW
1 b 56 b2 ALSONEW
2 c 74 3 c3 NaN
3 b 55 d4 ALSONEW
4 e 99 5 d5 NaN
5 a 86 d6 NEW
Bin ich eine falsche Annahme, dass fusionieren sollte 'wissen', dass Spalten Col4 Spiel in Namen?
Jede Hilfe wird geschätzt. Vielen Dank.
Danke für die Schule, John! Ich fühle mich wie ein Kleinkind, das mit Fitzpatrick spricht. – johnaco