从一个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]}这样的结果。
请问应该如何做?
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)
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!