结合来自不同设备的时间序列数据

数据挖掘 数据集 数据 可视化 传感器
2022-01-28 19:35:45

我正在使用四种不同的传感器模型(四种不同的设备)在同一时间段内为同一用户收集一些生物特征数据(例如心率)。在理想情况下,所有设备都已正确定位,因此我们暂时不担心空值和错误读数。

数据遵循以下格式:

timestamp: XXXXXXXXXX //unix epoch timestamp
duration: XXX //duration in seconds
value: XX
state: <state> //string that characterizes the state of the user based on the value

这些设备具有不同程度的敏感度,并且它们各自的图表可能包含不同的“状态”序列,包括每个“状态”出现的次数和它们各自的时间戳。

我现在的任务是将数据呈现到一个单一的图表中,该图表结合了来自所有设备的数据,并随着时间的推移清晰地呈现用户的“状态”。有没有办法做到这一点,而无需对设备的准确性或小持续时间读数的重要性做出任意决定?(如果这很重要,我会在 Python 中执行此操作)

1个回答

假设不同设备的持续时间相同,或者可以对数据进行重新采样(例如:1 分钟间隔的中位数)。

您可以将数字数据(值)显示为线图,每个传感器值都作为其自己的系列。您可能想要(或不想要!)标准化每个系列中的值以使它们更具可比性。

对于状态,将每个不同的状态映射到一个数值。例如:{“休息”:1,“跑步”:2,...}。然后使用以时间为 X 轴的点图,将此数值状态值作为 Y。用状态标签标记 y 刻度。每个传感器都应该有自己的颜色。

比较和对比

在处理多个相关数据系列时,数据系列之间的异同通常与每个系列本身一样提供信息(或更多)。

如果数据应该代表相同的事物。然后考虑计算所有传感器的值的中值,然后为每个传感器计算与组均值的差异。像上面一样绘制线图。

如果您希望在“状态”中达成一致,那么您可以计算传感器之间的模式。然后为每个传感器计算模式何时不同。将其绘制在与上面类似的状态图中,但现在将“模式”作为一个系列 - 对于每个传感器系列,仅绘制与模式不同的值。这也可以表示为与时间无关的混淆矩阵,无论是整体还是每个传感器。