Python 如果列中被视为索引的值多次出现,如何从保留所有值的数据帧中获取dict?
有没有一个最佳的方法来做这样的事情 假设我有以下数据帧:Python 如果列中被视为索引的值多次出现,如何从保留所有值的数据帧中获取dict?,python,pandas,dataframe,Python,Pandas,Dataframe,有没有一个最佳的方法来做这样的事情 假设我有以下数据帧: A B 0 1 1 1 1 2 2 2 3 3 2 4 4 2 5 我想买一本这样的字典: {1:[1,2],2:[3,4,5]} 请记住,列表的长度不同,因为值1出现两次,值2出现三次。如果我尝试 df.将索引(“A”)设置为dic(“列表”) Pandas仅为A中的每个值保留B中的最后一个值,并返回以下dict: {1:[2],2:[5] 与列表一起使用用于系列,然后: 与列表
A B
0 1 1
1 1 2
2 2 3
3 2 4
4 2 5
我想买一本这样的字典:
{1:[1,2],2:[3,4,5]}
请记住,列表的长度不同,因为值1
出现两次,值2
出现三次。如果我尝试
df.将索引(“A”)设置为dic(“列表”)
Pandas仅为A中的每个值保留B中的最后一个值,并返回以下dict:
{1:[2],2:[5]
与列表一起使用用于系列
,然后:
与列表
一起用于系列
,然后:
您可以按A
分组,并将B
中的值转换为列表:
result = {key: group['B'].tolist() for key, group in df.groupby('A')}
print(result)
输出
{1: [1, 2], 2: [3, 4, 5]}
您可以按A
分组,并将B
中的值转换为列表:
result = {key: group['B'].tolist() for key, group in df.groupby('A')}
print(result)
输出
{1: [1, 2], 2: [3, 4, 5]}