Tôi đã cập nhật câu hỏi của mình để cung cấp ví dụ rõ ràng hơn.Pandas drop_duplicates - TypeError: nhập đối số đối tượng sau * phải là một chuỗi, chứ không phải bản đồ
Có thể sử dụng phương thức drop_duplicates trong Pandas để loại bỏ các hàng trùng lặp dựa trên một id cột trong đó các giá trị chứa một danh sách. Xem xét cột 'ba' bao gồm hai mục trong danh sách. Có cách nào để thả các hàng trùng lặp hơn là làm nó lặp đi lặp lại (đó là cách giải quyết hiện tại của tôi).
tôi đã nêu vấn đề của tôi bằng cách cung cấp các ví dụ sau:
import pandas as pd
data = [
{'one': 50, 'two': '5:00', 'three': 'february'},
{'one': 25, 'two': '6:00', 'three': ['february', 'january']},
{'one': 25, 'two': '6:00', 'three': ['february', 'january']},
{'one': 25, 'two': '6:00', 'three': ['february', 'january']},
{'one': 90, 'two': '9:00', 'three': 'january'}
]
df = pd.DataFrame(data)
print(df)
one three two
0 50 february 5:00
1 25 [february, january] 6:00
2 25 [february, january] 6:00
3 25 [february, january] 6:00
4 90 january 9:00
df.drop_duplicates(['three'])
Kết quả trong các lỗi sau:
TypeError: type object argument after * must be a sequence, not map
bạn muốn 'df_two = df_one.drop_duplicates ('ID') 'hoặc cụ thể' df_two = df_one.drop_duplicates (tập hợp con = [ 'ID'])' – EdChum
sợ rằng chưa giải quyết được vấn đề. vẫn nhìn thấy cùng một lỗi – user3939059
do đó, không hoạt động 'df_two = df_one.drop_duplicates()'? – EdChum