python - 蜿蜒的数据聚合
问题描述
我正在使用 pandas 来获取用户活动的静态信息:
import pandas as pd
dataset = pd.read_csv('/content/drive/My Drive/Colab Notebooks/data.csv')
# data is a table with columns: src_id, time, requests
# time - represents time slots(30 s), when client was active
g = dataset.groupby("src_ip")
clients_statistic = pd.DataFrame(columns=["requests_count", "max_requests_in_30s", "time_slots_count"])
clients_statistic.active_time_slots_count = g["time"].count()
clients_statistic.requests_count = g["requests"].sum()
clients_statistic.max_requests_in_30s = g["requests"].max()
我已经拥有最大活动的价值。现在我需要得到用户活动最大的时刻。我可以通过迭代得到它。Byt 我不认为迭代 - 是一个好主意。
解决方案
为此,您可以使用简单的条件
例如,您有一些src_user_ip特定用户的值max_value。
要查找该用户活动最多的时刻,只需查找:
data[(data['src_id'] == src_user_ip) && (data['requests'] == max_value)]
方括号内的条件将产生真/假掩码,用于获取您想要查找的信息。
您可以在此处阅读有关熊猫条件的更多信息
推荐阅读
- unix - 让父 Rust 进程终止而不等待子进程
- android - Flutter 工具即使有权限也无法访问文件或目录
- java - 能够使用 java 连接到 MongoDB 数据库,但无法读取/写入连接的数据库
- java - Java自引用泛型类型
- javascript - 为什么自动完成 MaterializeCSS 不起作用?
- react-native - 反应导航错误(路线未定义)
- python - 数据框 - 使用 dict 内容更改列?
- python - 为给定列选择子字符串
- php - 从 URL 获取返回值
- javascript - JavaScript 中的事件处理:我应该如何处理来自 DOM 事件的错误?