Tôi có dataframe sau:gấu trúc: thả bản sao trong groupby 'date'
url='https://raw.githubusercontent.com/108michael/ms_thesis/master/crsp.dime.mpl.df'
df=pd.read_csv(url)
df.groupby('date').cid.size()
date
2005 7
2006 237
2007 3610
2008 1318
2009 2664
2010 997
2011 6390
2012 2904
2013 7875
2014 3979
df.groupby('date').cid.nunique()
date
2005 3
2006 10
2007 227
2008 52
2009 142
2010 57
2011 219
2012 99
2013 238
2014 146
Name: cid, dtype: int64
Tôi muốn loại bỏ cid
giá trị nhân bản như vậy mà sản lượng từ df.groupby('date').cid.size()
phù hợp với sản lượng từ df.groupby('date').cid.nunique()
. Tôi đã xem xét điều này post nhưng nó dường như không có một giải pháp vững chắc cho vấn đề.
Tôi đã thử những điều sau đây:
df.groupby([df['date']]).drop_duplicates(cols='cid')
Nhưng tôi nhận được lỗi này:
AttributeError: Cannot access callable attribute 'drop_duplicates' of 'DataFrameGroupBy' objects, try using the 'apply' method
và điều này:
df.groupby(('date').drop_duplicates('cid'))
Nhưng tôi nhận được lỗi này:
AttributeError: 'str' object has no attribute 'drop_duplicates'
Có ai có ý tưởng về điều này không?
Cảm ơn bạn đã cho ý kiến! Vâng, điều đó đã hiệu quả! Tôi tự hỏi về một số loại tập hợp con. –
Bạn được chào đón. Điều này hoạt động chủ yếu bởi vì nhóm vào ngày và tìm kiếm các hàng có cùng một cid trong mỗi nhóm giống như tìm kiếm các hàng trong khung dữ liệu chính có cùng ngày và cid. – ayhan