it-swarm.com.de

pandas: Füge zwei Datenrahmen in mehreren Spalten zusammen

Ich versuche, zwei pandas Datenrahmen mit zwei Spalten zu verbinden:

new_df = pd.merge(A_df, B_df,  how='left', left_on='[A_c1,c2]', right_on = '[B_c1,c2]')

habe aber folgenden fehler bekommen:

pandas/index.pyx in pandas.index.IndexEngine.get_loc (pandas/index.c:4164)()

pandas/index.pyx in pandas.index.IndexEngine.get_loc (pandas/index.c:4028)()

pandas/src/hashtable_class_helper.pxi in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:13166)()

pandas/src/hashtable_class_helper.pxi in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:13120)()

KeyError: '[B_1, c2]'

Irgendeine Idee, was der richtige Weg sein sollte, um dies zu tun? Vielen Dank!

113
Edamame

Versuche dies

new_df = pd.merge(A_df, B_df,  how='left', left_on=['A_c1','c2'], right_on = ['B_c1','c2'])

http://pandas.pydata.org/pandas-docs/version/0.19.1/generated/pandas.DataFrame.merge.html

left_on: Beschriftung oder Liste oder Array-ähnliche Feldnamen, die im linken DataFrame hinzugefügt werden sollen. Kann ein Vektor oder eine Liste von Vektoren mit der Länge des DataFrames sein, um einen bestimmten Vektor als Verknüpfungsschlüssel anstelle von Spalten zu verwenden

right_on: Beschriftung oder Liste oder Array-ähnliche Feldnamen, die im rechten DataFrame oder Vektor/Liste der Vektoren pro left_on-Dokument verknüpft werden sollen

205
Shijo