Python 如何按时间转换此数据帧? 原始数据帧: 我想要的转置数据帧 细节: id:用户 X_num:计算2016年某用户的X频率(与Y_num、Z_num相同) X_日:对于事件X,计算用户在2016年花费了多少天(与Y_日、Z_日相同) X_Dec_day:对于事件X,计算用户在2016年12月的天数 城市:用户仅居住在城市中(注意:已检查原始数据。) 希望:
如何使用pandas获得结果?你不应该简单地问如何做一件事,你应该尝试一个解决方案,并问为什么它不起作用。几点建议。1) 您可能希望先通过Python 如何按时间转换此数据帧? 原始数据帧: 我想要的转置数据帧 细节: id:用户 X_num:计算2016年某用户的X频率(与Y_num、Z_num相同) X_日:对于事件X,计算用户在2016年花费了多少天(与Y_日、Z_日相同) X_Dec_day:对于事件X,计算用户在2016年12月的天数 城市:用户仅居住在城市中(注意:已检查原始数据。) 希望:,python,pandas,Python,Pandas,如何使用pandas获得结果?你不应该简单地问如何做一件事,你应该尝试一个解决方案,并问为什么它不起作用。几点建议。1) 您可能希望先通过id、事件和城市进行groupby,然后进行count。您将得到一个包含所需数据的数据帧,然后您可以使用pd.pivot\u table进行转置。2) 对于\u day和\u Dec\u day事件,time列必须是某种datetime格式。然后,您可以为groupby编写一个自定义聚合函数。您不应该简单地询问如何做一件事,您应该尝试一个解决方案,并询问它为什
id
、事件和城市进行groupby
,然后进行count
。您将得到一个包含所需数据的数据帧,然后您可以使用pd.pivot\u table
进行转置。2) 对于\u day
和\u Dec\u day
事件,time
列必须是某种datetime
格式。然后,您可以为groupby
编写一个自定义聚合函数。您不应该简单地询问如何做一件事,您应该尝试一个解决方案,并询问它为什么不起作用。几点建议。1) 您可能希望先通过id
、事件和城市进行groupby
,然后进行count
。您将得到一个包含所需数据的数据帧,然后您可以使用pd.pivot\u table
进行转置。2) 对于\u day
和\u Dec\u day
事件,time
列必须是某种datetime
格式。然后,您可以为groupby
编写自定义聚合函数。
id time event city
A 2016/12/1 3:25 X M
A 2016/12/1 9:03 X M
A 2016/1/2 9:03 X M
A 2016/12/12 9:05 Y M
A 2016/1/1 9:34 Z M
B 2016/12/1 9:36 X N
B 2016/12/2 12:18 Y N
B 2016/12/2 12:58 X N
id X_num X_day Y_num Y_day Z_num Z_day X_Dec_day city
A 3 2 1 1 1 1 1 M
B 2 2 1 1 0 0 2 N