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}}
我正在寻求将我的数据框转换为嵌套字典,以便稍后将数据配置为类似艺术家的稀疏矩阵。我下面的尝试几乎完成了,但我不确定如何正确地将嵌套列表更改为字典。
这是示例数据:
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}}