我正在使用网络日志,数据中包含帐户id和会话id。多个会话可以与一个帐户关联。我想创建一个包含帐户id的新数据框,并计算与该帐户关联的唯一会话数。我的df看起来像这样:
account_id session_id
1111 de322
1111 de322
1111 de322
1111 de323
1111 de323
0210 ge012
0210 ge013
0211 ge330
0213 ge333
我正在使用以下代码:
new_df = df.groupby(['account_id','session_id']).sum()
我得到的输出如下:
account_id sessions
1111 de322
de323
0210 ge012
ge013
0211 ge330
0213 ge333
我期望的输出
account_id sessions
1111 2
0210 2
0211 1
0213 1
我该怎么修?
df = pd.DataFrame({'session': ['de322', 'de322', 'de322', 'de323', 'de323', 'ge012', 'ge012', 'ge013', 'ge333'],
'user_id': [1111, 1111, 1111, 1111, 1111, 210, 210, 210, 211],
})
print(df)
df = df.drop_duplicates().groupby('user_id').count()
print(df)
输出:
user_id
210 2
211 1
1111 2
问题内容: 我有一个像这样的元组列表(总是成对出现): 我想找到每对中第一项的总和,即: 如何在Python中执行此操作?目前,我正在遍历列表: 我觉得必须有一种更Python化的方式。 问题答案: 与Python 2.3兼容的版本是 或在最新版本的Python中,请参见此答案。 也会做。
问题内容: 这个问题已经在这里有了答案 : 具有唯一值的排列 (19个答案) 7年前关闭。 我正在寻找列表的唯一排列,x = [“ $ 5”,“ $ 10”,“ $ 10”,“ TAX”,“ $ 5”,“ 20%”,“ BOGO”,“ BOGO”,“ TAX “](9人一组) 我目前正在做的是 但是,这需要很长时间才能运行,我想知道是否有人可以为我提供更有效的解决方案。 问题答案: 这将花费很长时
问题内容: 我想创建一个(或一组)所有出现在python列表中的唯一值的列表。我有这样的事情: 我想要以下内容: 我知道对于字符串列表,您只能使用set(aList),但是我无法弄清楚如何在列表列表中解决此问题,因为set(aList)会向我显示错误消息 我该如何解决? 问题答案:
问题内容: 这是我的数据 是独特的。我需要显示每张卡的所有详细信息和总时间,例如: 问题答案: SELECT卡号,用户名,表名,总和(小时)从表_1 GROUP BY卡号,用户名,表名开始
问题内容: 我已经在处理以下代码,但是似乎找不到一种方法来计算字谜列表中唯一值的数量。如果我只是打印出:我会得到列表的总价值,但其中包括重复项。 我试图将列表转换为集合,然后再删除掉重复项,但是还没有任何运气。 谢谢! 问题答案: 使用。仅包含唯一值:
我有一个data.table,我需要生成另一个data.table,它只列出每列的唯一值。一个例子: 从 到 实现这一点最有效的方法是什么?