Я пытаюсь свернуть строки кадра данных на основе ключа. Мой файл большой, и панды выдают ошибку памяти. В настоящее время я пытаюсь использовать DASK. Я прилагаю здесь фрагмент кода.
def f(x):
p = x.groupby(id).agg(''.join).reset_index()
return p
metadf = pd.DataFrame(columns=['c1','p1','pd1','d1'])
df = df.groupby(idname).apply(f, meta=metadf).reset_index().compute()
p
имеет ту же структуру, что и metadf
. Форма обоих фреймов данных одинакова.
Когда я выполняю это, я получаю следующую ошибку:
"ValueError: Несоответствие длины: ожидаемая ось имеет 6 элементов, новые значения имеют 5 элементов"
Что мне здесь не хватает? Есть ли другой способ свернуть строки на основе ключа в dask?
The task in hand, to do the following sample in a dask dataframe
Input csv file :
key,c1,c2,c3......,cn
1,car,phone,cat,.....,kite
2,abc,def,hij,.......,pot
1,yes,no,is,.........,hello
2,hello,yes,no,......,help
Output csv file:
key,c1,c2,c3,.......,cn
1,caryes,phoneno,catis,.....,kitehello
2,abchello,defyes,hijno,....,pothelp