【发布时间】:2021-06-14 15:41:21
【问题描述】:
我有一个包含多个列的数据框,包括流平台的 family_ID 和 user_ID。我要做的是在这个数据框中找到哪些家庭 ID 与他们关联的唯一用户最多 . 用于此的 SQL 代码是:
SELECT TOP 5 family_id,
Count(distinct user_id) AS user_count
FROM log_edit
WHERE family_id <> ''
GROUP BY family_id
ORDER BY user_count DESC;
使用 pandas 我可以得到相同的结果:
df.groupby('family_id')['user_id'].nunique().nlargest(5)
我的问题是,我怎样才能在不使用 Pandas 或 SQL 的情况下获得相同的结果?我可以使用 Pandas 导入 .csv,但必须在没有它的情况下进行分析。处理此案的最佳方法是什么?
如果它是一个数组,我假设结果类似于[1,2,3,4,5] [9,7,7,7,5],其中 1->5 是家庭 id,另一个数组是注册到他们的用户 id 的数量(按降序排序,限制为 5 个结果)
谢谢!
【问题讨论】:
-
我不清楚你在问什么。你有一个 csv(?) 但不想使用 SQL 或 pandas,但你没有指定你确实想如何解决这个问题。
-
@HenryEcker 是的,我有一个 csv 文件,除了读取 csv 之外我不能使用 pandas,但也许 numpy 来分析它。我不完全确定如何自己解决这样的问题,这就是我在这里问这个问题的原因。