У меня есть pandas dataframe из 5M записей и 400k групп с двумя столбцами, и я пытаюсь развернуть строки в столбцы и объединить все значения столбцов в один столбец. Для объяснения я взял подмножество данных из моего кадра данных
EVENT_ID DIAGNOSIS
24601 637
24601 1561
24601 360
24601 3002
82903 1580
82903 923
82903 986
94261 1940
94261 2353
94261 4553
Я попытался использовать следующий код для поворота кадра данных.
df_pivot = df.pivot(index='EVENT_ID', columns='DIAGNOSIS', values ='DIAGNOSIS').add_prefix('').reset_index()
и это дает мне ошибку, говорящую:
Unstacked Dataframe слишком велик, вызывая переполнение int32
Я взял подмножество, чтобы посмотреть, работает ли оно и работает ли оно.
Я ожидаю, что мой фрейм данных будет выглядеть как
EVENT_ID 637 1561 360 3002 1580 923 986 231 1940 2353 4553 all_diagnosis
24601 637 1561 360 3002 637|1561|360|3001
82903 1580 923 986 1580|923|986
94261 1940 2353 4553 1940|2353|4553
В конце концов я хочу создать словарь для EVENT_ID: all_echos
который выглядит как:
{
24601 : 637|1561|360|3001
82903 : 1580|923|986
94261 : 1940|2353|4553
}
У меня есть код для создания словаря, когда я пытался найти подмножество данных, и оно работало.
Когда я пытаюсь использовать тот же код для полных данных, он не работает. Буду очень признателен, если кто-нибудь может подсказать мне, как это сделать для полных данных.