如何使用Pandas(Python)报告useritem交互

2024-04-27 02:55:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一些服务器日志数据,显示了用户和项目的交互。我不想知道有多少次用户看了一个项目,只是它发生了。在Pandas中有没有一种方法可以一次聚合两个列来完成这一任务而不需要循环?你知道吗

举个例子:

import pandas as pd
a = pd.DataFrame([['A', 2], ['A', 2], ['A', 3], ['B', 1], ['B', 1], ['B', 1], ['B', 3]], columns=['UserID', 'ItemID'])

print a
# Desired output:
print pd.DataFrame([['A', 2], ['A', 3], ['B', 1], ['B', 3]], columns=['UserID', 'ItemID'])

输入:

    UserID  ItemID
0      A       2
1      A       2
2      A       3
3      B       1
4      B       1
5      B       1
6      B       3

期望输出:

  UserID  ItemID
0      A       2
1      A       3
2      B       1
3      B       3

Tags: columns数据项目方法用户import服务器dataframe
1条回答
网友
1楼 · 发布于 2024-04-27 02:55:57

怎么样:

>>> a
  UserID  ItemID
0      A       2
1      A       2
2      A       3
3      B       1
4      B       1
5      B       1
6      B       3
>>> a.drop_duplicates()
  UserID  ItemID
0      A       2
2      A       3
3      B       1
6      B       3
>>> a.drop_duplicates().reset_index(drop=True)
  UserID  ItemID
0      A       2
1      A       3
2      B       1
3      B       3

相关问题 更多 >