我有一个组织成结构的数据集。我有大量传感器,每个传感器都有四个读数a
,d
因此结构D
包含D.sensorID
、D.a
、D.b
、D.c
和D.d
。我正在寻找读数分布中的异常值。我已经绘制了数据并选择了限制并编写了一个脚本,该脚本可以识别具有超出这些限制的读数的传感器 ID,并将它们保存到一个数组中:
aMax = 5;
aHighIndices = find(D.a>aMax);
aMin = 0;
aLowIndices = find(D.a<aMin);
aHighLength = size(aHighIndices);
for i = 1:aHighLength
A_hi(i) = D.sensorID(aHighIndices(i));
end
这是重复的:a_Hi
, a_Low
, b_Hi
, 等等...然后我将结果拼凑在一起:
outliers = [A_hi; A_low; B_low; B_hi; C_low; C_hi; D_low; D_hi];
有没有更简洁的方法来做到这一点?