Создание словаря списков из pandas фрейма данных - PullRequest
0 голосов
/ 29 апреля 2020

Я пытаюсь создать словарь списков на основе pandas фрейма данных, мне нужен словарь списков, чтобы передать его для моей панели управления Plotly

In:
df.head()
Model    Make
Ford     F-150
Ford     Escape
Ford     Mustang
Jeep     Grand Cherokee
Jeep     Wrangler

Я нашел df.to_dict() ориентации по столбцам заголовок, но мне нужно ориентироваться на основе значения соседней строки. Является ли единственный способ сделать это, переформировав мой фрейм данных в столбцы по модели с соответствующими марками под ними?

Out:
makes_by_model= {
    'Ford': ['F-150', 'Escape', 'Mustang'],
    'Jeep': ['Wrangler', 'Grand Cherokee']
}

1 Ответ

3 голосов
/ 29 апреля 2020

Вы можете groupby, агрегировать в списки, вернуть rec.array с to_records и построить словарь из результата:

dict(df.groupby('Model').agg(list).to_records())
# {'Ford': ['F-150', 'Escape', 'Mustang'], 'Jeep': ['Grand Cherokee', 'Wrangler']}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...