如何根据索引或数据帧中的A列创建列表



我有这个数据帧:

A     B      C
1     14    100
1     15    101
1     16    102
2     17    103
2     18    104
3     19    105
3     20    106
...   ...    ...
n     

我想要这个输出,用于整个数据帧的n以内的任何数字:

l1 = [14, 15, 16] (the 1 in A column)
l2 = [17,18]  (the 2 in A column)
l3 = [19,20] (the 3 in A column)

你能帮帮我吗?坦克!

尝试:

l1, l2, l3 = df.groupby('A')['B'].apply(list).values

只有当df[A']中有三个唯一的值时,解包才能工作,所以你可能不想解包这些值,只想从中索引得到的DataFrame

>>> df.groupby('A')['B'].apply(list)
A
1    [14, 15, 16]
2        [17, 18]
3        [19, 20]

最新更新