------ Исходные данные ----
До:
Speak English Length currentCode currentName
0 True 1 $A USA
1 True 2 $AM Massachusetts
2 True 3 $AMB Boston
3 True 3 $AMS Springfield
4 True 3 $AMA Amherst
5 True 3 $AMP Plymouth
6 False 1 $D Germany
7 False 2 $DB Brandenburg
8 False 3 $DBB Berlin
9 False 3 $DBD Dresden
После
Speak English Length futureCode futureName
0 True 1 $A America
1 True 2 $AM Maine
2 True 3 $AMC Brockton
3 True 3 $AMM Main
4 False 1 $D Denmark
5 False 2 $DC Copenhagen
6 False 3 $DCC Copper
7 False 3 $DCD Dresden
Цель:
Примечание: Цель в форме сводной таблицы в Excel. Мои коды:
import pandas as pd
before = pd.read_excel(r'/Users/BoBoMann/Desktop/Sequence.xlsx',sheet_name='Before')
after = pd.read_excel(r'/Users/BoBoMann/Desktop/Sequence.xlsx',sheet_name='After')
Попытка № 1: Объединить, но не знаю, как установить индекс Speak Engli sh и Длина потом:
pd.concat([before,after],axis = 1,keys=['Before','After'],join='outer')
Попытка # 2: Установить индекс для каждого фрейма данных, но не может объединить вдоль столбцов, поскольку Pandas повышает ValueError: не может обработать неуникальный мультииндекс!
before = before.set_index(['Speak English','Length']).sort_index(axis = 0)
after = after.set_index(['Speak English','Length']).sort_index(axis = 0)
pd.concat([before,after],axis = 1,keys=['Current','Future'],join='outer')
Большое спасибо за вашу помощь!