Новое для панд, пожалуйста, пожалуйста, со мной. Я пытаюсь объединить следующие 2 кадра данных.Pandas: слияние 2 dataframes
df.head():
x y z w
0 0.0056 11 824 51
1 0.0056 138 546 16
2 0.0056 328 1264 40
3 0.0056 1212 553 91
4 0.0056 1839 388 48
df1.head():
x y z
0 5539.0567 12243 27
1 5873.2923 14474 1540
2 3975.9776 11353 699
3 1508.5975 8250 628
4 66.7913 11812 538
с помощью следующей команды:
df1 = df1.merge(df, how='left',left_on=(['x','y','z']),right_index=True)
и следующее сообщение об ошибке всплывает:
ValueError: len(left_on) must equal the number of levels in the index of "right"
Всего df имеет 11458060 строк, а df1 имеет 2528243 строки
Я действительно не знаю, что это значит. Может ли кто-нибудь сказать мне, что я могу делать неправильно?
Если вы указываете left_on = что-то в слиянии, вы также должны указать right_on. Это полезно только тогда, когда столбцы двух ваших данных не имеют одинаковых имен. В противном случае просто используйте on = something. – ysearka