Как разбить большой фрейм данных на несколько фреймов на основе первых 3 символов имен столбцов? - PullRequest
0 голосов
/ 30 августа 2018

У меня есть огромный фрейм данных (2077 столбцов), который я хотел бы разбить на несколько фреймов данных (точно 78). Название каждого столбца начинается с трехбуквенной аббревиатуры (coc, cou, wam и т. Д.). Как бы я разделил основной фрейм данных на несколько меньших фреймов данных на основе первых 3 букв имен столбцов?

Заранее спасибо.

1 Ответ

0 голосов
/ 30 августа 2018

Вызовите groupby с помощью лямбды и выполните итерации по объекту группы, чтобы разделить их в список DataFrames:

df_list = [g for _, g in df.groupby(by=lambda x: x[:3], axis=1)]

Если вместо этого вы хотите отобразить {prefix: dataFrame}, вы можете создать словарь:

df_dict = {k: g for k, g in df.groupby(by=lambda x: x[:3], axis=1)}
...