DataFrame中查找指定的值所在的位置的问题

从一个DataFrame中,取出了一列,这列叫column,它是个series

假设column = ['A', 'A', 'B', 'A', 'C', 'B']

我通过去重,已经知道了,column中的值,只有3种情况,['A', 'B', 'C']

现在我想知道column中,值分别等于'A',‘B’,'C'时的行号

即'A'在第1,2,4行中
‘B’在第3,6行中
'C'在第5行中

想要获得{'A':[1,2,4], 'B':[3,6], 'C':[5]}这样的结果。
请问应该如何做?

img


column = ['A', 'A', 'B', 'A', 'C', 'B']
dict={}
a=0
b=0
c=0
for i in range(len(column)):
    if column[i]=='A' and a==0:
        dict['A']=[i+1]
        a+=1
        continue
    if column[i]=='A' and a==1:
        dict['A'].append(i+1)
    if column[i]=='B' and b==0:
        dict['B']=[i+1]
        b+=1
        continue
    if column[i]=='B' and b==1:
        dict['B'].append(i+1)
    if column[i]=='C' and c==0:
        dict['C']=[i+1]
        c+=1
        continue
    if column[i]=='C' and c==1:
        dict['C'].append(i+1)
print(dict)

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632