Python 如何按时间转换此数据帧? 原始数据帧: 我想要的转置数据帧 细节: id:用户 X_num:计算2016年某用户的X频率(与Y_num、Z_num相同) X_日:对于事件X,计算用户在2016年花费了多少天(与Y_日、Z_日相同) X_Dec_day:对于事件X,计算用户在2016年12月的天数 城市:用户仅居住在城市中(注意:已检查原始数据。) 希望:

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编写一个自定义聚合函数。您不应该简单地询问如何做一件事,您应该尝试一个解决方案,并询问它为什

如何使用pandas获得结果?

你不应该简单地问如何做一件事,你应该尝试一个解决方案,并问为什么它不起作用。几点建议。1) 您可能希望先通过
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