【发布时间】:2021-03-04 12:10:07
【问题描述】:
我有下面的数据框重复数据。我想从数据框中删除这些重复项。
df = pd.DataFrame({'test_id': [
{'user_id':2, 'insert_date':'2020-12-23', 'is_admin': "true"},
{'user_id':4, 'insert_date':'2020-12-23', 'is_admin': "true"},
{'user_id':3, 'insert_date':'2020-12-21', 'is_admin': "false"},
{'user_id':2, 'insert_date':'2020-12-23', 'is_admin': "true"}
], 'contact_id':[1,4,2,1]}
)
print(df)
test_id contact_id
0 {'user_id': 2, 'insert_date': '2020-12-23', 'i... 1
1 {'user_id': 4, 'insert_date': '2020-12-23', 'i... 4
2 {'user_id': 3, 'insert_date': '2020-12-21', 'i... 2
3 {'user_id': 2, 'insert_date': '2020-12-23', 'i... 1
我已尝试在下面删除重复项
df = df.drop_duplicates(subset=['test_id', 'contact_id'], keep='first')
print(df)
但是遇到错误
TypeError: unhashable type: 'dict'
谁能指导我如何删除基于“test_id”、“contact_id”组合的重复数据?
我想要下面的输出
test_id contact_id
0 {'user_id': 2, 'insert_date': '2020-12-23', 'i... 1
1 {'user_id': 4, 'insert_date': '2020-12-23', 'i... 4
2 {'user_id': 3, 'insert_date': '2020-12-21', 'i... 2
【问题讨论】: