我正在根据我的数据进行分组created_at_hour
并计算总和。我这样做没有问题。但是,我只想获得一个只有这两列的新数据框。我怎样才能做到这一点?
这是我的数据示例
created_at, user_id
xxx, x
这就是我到目前为止所做的。
data.created_at = pd.to_datetime(data.created_at)
data['created_at_minute'] = data.apply(lambda row: row['created_at'].minute, axis=1)
data['created_at_day'] = data.apply(lambda row: row['created_at'].day, axis=1)
data['created_at_hour'] = data.apply(lambda row: row['created_at'].hour, axis=1)
group_by = data.groupby(['created_at_hour']).agg(['count'])
group_by.plot()
我得到这样的图。
一切都很好,但是现在我想拥有一个带有just的新数据框,created_at_hour
以及我该怎么做的新count
列groupby
?到目前为止,这是结果。
您data.groupby(['created_at_hour']).created_at.agg(['count'])
只能在一个列上进行汇总(在本例中为created_at
)。然后,您得到的DataFrame将只有一列。因为您曾经使用过.agg(['count'])
(传递一个元素列表),它仍将具有MultiIndex列索引。如果您只想进行一次汇总,则可以改用.agg('count')
或.count()
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句