Reputation: 33
I have a dataframe ,that looks like this
site Active
0 deals Active
1 deals Active
2 deals Active
3 discount Active
4 discount Active
i don't want to drop the duplicate items, but i want to change the Active columns value based on Site column,for example Active has to change inactive based on duplicate item in site column,last duplicate item has to Active, other than that Inactive
Expected
site Active
0 deals InActive
1 deals InActive
2 deals Active
3 discount InActive
4 discount Active
Upvotes: 1
Views: 73
Reputation: 862641
Use Series.duplicated
with keep='last'
and pass to DataFrame.loc
for set new values:
df.loc[df['site'].duplicated(keep='last'), 'Active'] = 'InActive'
print (df)
site Active
0 deals InActive
1 deals InActive
2 deals Active
3 discount InActive
4 discount Active
Upvotes: 1