详细内容或原文请订阅后点击阅览
使用 Mimesis 模拟一年的 IoT 传感器时间序列数据
在本指南中,您将了解生成一年的每日温度读数的过程,模仿看起来真实的季节性曲线 - 所有这些都与设备级元数据一起,并准备基于开源框架进行构建。
来源:KDnuggets简介
模拟难以大规模收集的物联网 (IoT) 传感器数据可以成为促进实验分析、项目和研究的一种有价值的方法。然而,它需要的不仅仅是随机值生成:它需要按时间顺序排列的时间线、设备元数据以及反映自然环境波动或季节性等模式的需要。Mimesis 是用于生成虚假数据的优秀开源工具,而一些数学知识可以集成到基于代码的解决方案中来处理后者:本文展示了如何实现。
通过下面的分步指南,我将引导您完成生成一年的每日温度读数的过程,模仿看起来像真实的季节性曲线 - 所有这些都与设备级元数据一起,并准备基于开源框架进行构建。
分步指南
我们将依靠三个关键的 Python 库来创建全年的 IoT 传感器读数集:用于生成合成数据的 mimesis、用于处理时间序列支架的 pandas 以及用于进行一些数学运算的 NumPy,从而引导我们模仿季节性模式。
请记住,现实世界的物联网时间序列数据集通常与具体设备绑定。在 Mimesis 的帮助下模拟这一点的方法是使用通用提供程序类并生成真实的硬件设备配置文件:可以说是我们的“虚构传感器”。这是在创建实际每日读数之前完成的:
请注意,device_profile 是一个字典,其中包含我们虚构的传感器元数据:标识符、位置、固件版本和 IP 地址。它看起来像:
跟踪设备:位于 Paragould 的 e88b7591-31db-4e32-98dc-b35f94c662cd
\[
T(t) = T_{\text{base}} + A \cdot \sin\left(\frac{2\pi (t - \phi)}{365}\right) + \epsilon
\]
现在是时候看看生成的 IoT 时间序列是什么样子并验证我们试图模仿的季节性模式:
输出:
为了获得更直观的结果,为什么不试试这个:
如果你做到了这一步,干得好!
