Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
165 views
in Technique[技术] by (71.8m points)

python - Boolean for unique value in a column

For my dataframe, e.g.

df = pd.DataFrame([1, 3, 7, 1], columns=['data'])

I want to know for each index if the value is unique in the column data.

So the resulting dataframe should be

    data    is_unique
0   1       False
1   3       True
2   7       True
3   1       False

Is there a convenient approach with pandas?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Use duplicated with invert mask by ~:

df['is_unique'] = ~df['data'].duplicated(keep=False)
print (df)

   data  is_unique
0     1      False
1     3       True
2     7       True
3     1      False

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...