假设有一个传感器可以记录每次激活的日期和时间。我将这些数据以列表形式存储在.json文件中,格式为“2000-01-01T00:30:15+00:00”。在
现在,我要做的是在python中导入这个文件,并使用NumPy/Mathplotlib绘制这个传感器每天被激活的次数。在
我的问题是,使用这些数据,我不知道如何编写一个算法来计算传感器每天被激活的次数。(这应该很简单,但是由于Python知识有限,我陷入了困境)。假设有一种方法可以将这个列表按日期(例如“2000-01-01”)拆分,然后对该日期的记录进行计数。在
你如何计算传感器被激活的次数?(然后绘制一个显示每天激活次数的图?)在
如果您的json文件加载一个列表,如:
注意:这假设json文件返回一个列表列表,其中时间戳作为第一个元素。相应调整。在
在dateutil和datetime中有解析器来解析时间戳。 如果数数真的是你所做的一切,那就太过分了。你可以:
^{pr2}$首先需要加载JSON文件:
记录将是包含您的记录的列表或字典。在
假设您的日志文件如下所示:
^{pr2}$记录将是字符串的列表。所以分析日期只是:
希望这足够清楚。使用“字符串”。拆分和日期时间.strptime应该能做到这一点,虽然你不必把它解析成一个date对象来存储它,但它可能会使以后的事情变得更简单。在
最后,使用列表字典进行binning应该非常简单。启动 根据上面的内容,让我们添加binning:
这会给你一个字典,其中每个键都是日期,每个值是当天记录的记录列表。在
您可能需要按日期对其进行排序(尽管您可以使用集合.OrderedDict如果数据已经整理好)。在
每天计算激活次数可以是:
当然,将这些信息转换成matplotlib需要的格式需要更多的工作,但是从这里开始应该不会太糟糕。在
相关问题 更多 >
编程相关推荐