【发布时间】:2016-03-30 13:48:55
【问题描述】:
我有一个看起来像这样的数据框:
app_id subproduct date
0 23 3 2015-05-29
1 23 4 2015-05-29
2 25 5 2015-05-29
3 23 3 2015-05-29
4 24 7 2015-05-29
....
我跑:
groupings =insightevents.groupby([insightevents['created_at_date'].dt.year,\
insightevents['created_at_date'].dt.month,\
insightevents['created_at_date'].dt.week,insightevents['created_at_date'].dt.day,
insightevents['created_at_date'].dt.dayofweek]);
inboxinsights=pd.DataFrame([groupings['app_id'].unique(),groupings['subproduct'].unique()]).transpose()
这给了我:
app_id subproduct
2015 5 22 29 4 [23,24,25] [3,4,5,7]
但是,我实际上想要的不仅仅是获取唯一值,而是总体上只是 app_ids 和 sub_product 在当天作为附加列加载,所以:
unique_ app_id unique_subproduct subproduct app_id
2015 5 22 29 4 [23,24,25] [3,4,5,7] [3,3,4,5,7] [23,23,23,24,25]
我发现只是这样做:
inboxinsights=pd.DataFrame([groupings['app_id'].unique(), groupings['subproduct'].unique(),groupings['app_id'],groupings['subproduct']]).transpose()
不起作用,只是给我:
AttributeError: 'Series' object has no attribute 'type'
【问题讨论】:
标签: python pandas unique grouping