我正在遍历2列。当我找到一个重复项时,我想输出与其他列的该行相对应的值。我使用了以下逻辑:
n = df.values
val = 0
cpval=0
i=0
for id,cp in zip(n[:,2:3],n[:,1:2]):
if(id is val and cp is cpval):
print(id)
print(n[i,11])
print(val)
print(n[i-1,11])
val=id
cpval=cp
else:
val=id
cpval=cp
i=i+1
索引切片是正确的,并且一切都很好,但是没有显示输出,当我手动看到它时,有重复项。 else
部分工作正常。
n[:,2:3]
是浮点类型
n[:,1:2]
是对象类型
逻辑错误吗?代码有什么问题?
数据框示例-
2013J 538210
2013B 538211
2013B 538221
2013B 538232
2013B 538232
2013B 538251
2013B 538611
2013B 538701
2013J 538863
2013J 538887
2014B 538887
2013B 538897
2013J 538903
对于此数据,我需要输出-
538232
Fail #(this value is in another column at n[i,11], i is the count
of the row)
538232
Withdrawn
当我打印id和cd时,其中一个元素就是这样-
(array([3733], dtype=object), array(['2013J'], dtype=object))
这可能是问题