在Pandas数据框架中寻找模式

2024-10-02 12:22:52 发布

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

我有一个很大的熊猫数据框,看起来像这样。在

                                           id  rssi location         day      time
0        2a463296-bd84-512a-8484-9d79649922ae    58     G-19  2016-01-27  12:35:23
1        c6a18d27-63ba-5457-99c1-4c08f6410e33    74     G-19  2016-01-27  12:35:26
2        ee75fa2d-66d9-52e5-9198-a886288ba044    74     G-19  2016-01-27  12:35:28
3        3dc1f5f5-eab3-541c-97f8-e57f32bdf53d    82     G-19  2016-01-27  12:35:28
4        6c1b9019-a6bc-5ed6-82e6-879b7c120991    62     G-19  2016-01-27  12:35:33
26       2a463296-bd84-512a-8484-9d79649922ae    38     G-20  2016-01-27  12:36:58
27       c6a18d27-63ba-5457-99c1-4c08f6410e33    70     G-20  2016-01-27  12:36:59
28       7edb5047-62b8-58bf-89f4-4151d7b694f4    70     G-20  2016-01-27  12:37:01
29       f4c906a8-7680-5bac-b7a0-be408364a268    58     G-20  2016-01-27  12:37:07

。。。在

^{pr2}$

每个id都是WiFi设备的id。我正在努力建立设备运动的图像。例如,我想模拟2a463296-bd84-512a-8484-9d79649922ae是如何从G-19到G59,但在G20呆了1个多小时,所以我们假设设备刚刚通过G19。在

从我进行的测试来看,大多数设备至少每5分钟就能看到一次。很明显,当一个设备通过其中一个探测器时,它可能不会被视为唯一被检测到的,当它为WiFi广播信标时。在

我想证明设备A在位置1停留了x段时间,然后去了2号位置y时间,或者从出口门经过位置c,有好几个小时没再看到。在

我只担心某个设备在某一天做什么,而不是其他任何一天。在

解决这个问题最好的办法是什么。在


Tags: 数据idtimelocationwifi小时rssiday
1条回答
网友
1楼 · 发布于 2024-10-02 12:22:52

使用布尔选择按ID获取所需项目。使用日期作为条件进一步选择。用时间列做数学题。如果你想知道设备什么时候根本看不见,那么当你按ID选择一个特定的设备时,它应该是显而易见的

详情请参阅熊猫文档。 pandas Indexing and Selecting

编辑:

for i in df["day"].unique():
    date_df = df[df["day"]== i]
    ids_seen = set()
    for index, row in date_df.iterrows():
        if row["id"] not in ids_seen:
        '''
          Enter nested loop and do some stuff for each unique id. Add it to a set so we can keep track
        '''
        ids_seen.add(row["id"])

相关问题 更多 >

    热门问题