pandas df 到稀疏矩阵的嵌套字典

pandas df to nested dictionary for sparse matrix

我正在寻求将我的数据框转换为嵌套字典,以便稍后将数据配置为类似艺术家的稀疏矩阵。我下面的尝试几乎完成了,但我不确定如何正确地将嵌套列表更改为字典。

这是示例数据:

user                                        artist              plays
00001411dc427966b17297bf4d69e7e193135d89    animal collective   1373
00001411dc427966b17297bf4d69e7e193135d89    sting               1323
fffe8c7f952d9b960a56ed4dcb40a415d924b224    none more black     117
fffe8c7f952d9b960a56ed4dcb40a415d924b224    queen               117

这是我的代码:

user_artist_dict = user_artist_plays.groupby('users').artist.apply(list).to_dict()

我设想的结果是 {‘user1’: {‘artist’: plays, 'artist2': plays, 'artist3': plays}, 'user2': {‘artist’: plays, 'artist2': plays, 'artist3': plays}}

就是这样。

df.groupby('user').apply(lambda df: dict(zip(df.artist, df.plays))).to_dict()

{'00001411dc427966b17297bf4d69e7e193135d89': {'animal collective': 1373,
  'sting': 1323},
 'fffe8c7f952d9b960a56ed4dcb40a415d924b224': {'none more black': 117,
  'queen': 117}}