我有一个数据帧,我需要结合两个不同的分组和其中一个过滤。
ID EVENT SUCCESS
1 PUT Y
2 POST Y
2 PUT N
1 DELETE Y
下表是我希望数据的外观。首先对“EVENT”计数进行分组,第二个是对每个ID的成功次数('Y')进行计数
ID PUT POST DELETE SUCCESS
1 1 0 1 2
2 1 1 0 1
我尝试了一些技术,我发现壁橱是两种不同的方法,产生以下结果
group_df = df.groupby(['ID', 'EVENT'])
count_group_df = group_df.size().unstack()
这将产生以下“事件”计数
ID PUT POST DELETE
1 1 0 1
2 1 1 0
对于过滤器的成功,我不知道我是否可以加入到“ID”的第一个集合中
df_success = df.loc[df['SUCCESS'] == 'Y', ['ID', 'SUCCESS']]
count_group_df_2 = df_success.groupby(['ID', 'SUCCESS'])
ID SUCCESS
1 2
2 1
我需要把这些组合起来?
此外,我还想将“事件”的计数(例如PUT和POST)合并到一个列中。
pandas
numpy
和pandas
计时
小数据
大数据
使用^{} 将它们合并在一起:
使用^{} 的另一个解决方案:
最后一种方法是将索引转换为列,并通过^{} +^{} 删除列名
ID
:相关问题 更多 >
编程相关推荐