根据另一列记录一列的值:Python&熊猫

时间:2014-08-06 19:35:28

标签: python pandas dataframe

所以我有一个数据框

id value
a 1
b 1
a 1
c 1
d 2
a 1
g 2
....

如果id等于value,我想创建一个包含所有唯一1的数组。在这种情况下,输出为['a', 'b', 'c']。数据框已设置为不应重叠 - a bc仅在值等于1时出现。

有什么建议吗?谢谢!

1 个答案:

答案 0 :(得分:1)

使用loc和布尔值掩码过滤数据框并选择“id”列,然后调用unique()删除重复项:

In [5]:

df.loc[df.value == 1,'id'].unique()
Out[5]:
array(['a', 'b', 'c'], dtype=object)