在python中行明智的异常值检测

时间:2015-11-26 12:11:22

标签: python csv pandas scikit-learn time-series

我的CSV数据如下:

Set

我想要做的是,找出每行中的异常值。

关于数据:

DictionaryA_ID P_ID 1429982904 1430370002 1430974801 1431579602 1432184403 1432789202 1435208402 1435308653 11Jgipc qjMakF 364 365 363 363 364 364 364 367 11Jgipc qxL8FJ 18 18 18 18 18 18 18 18 11Jgipc r0Bpnt 40 40 41 41 41 42 42 42 11Jgipc roLk4N 140 140 143 143 146 147 147 149 11Jgipc tOudhM 12 13 13 13 13 13 14 14 11Jgipc u-x6o8 678 678 688 688 689 690 692 695 11Jgipc u5HHmV 1778 1785 1811 1811 1819 1826 1834 1836 11Jgipc ufrVoP 67 67 67 67 67 67 67 67 11Jgipc vRqMK4 36 36 34 34 34 34 34 34 11Jgipc wbdj-C 31 33 35 35 36 36 36 37 11Jgipc xtRiw3 6 6 6 6 6 6 6 6 之外的列标题是时间戳。因此,对于每对A_IDP_ID(行中的),存在一组值。因此,每一行都可以视为一个时间序列。

预期输出:

对于每一行,可能是A_ID

形式的元组

我尝试了什么:

我按照this Stack Overflow answer解决方案中的建议尝试过。

  • 首先找出均值和标准差的最简单的解决方案,然后找出 K - 标准差以及高于平均值的异常值,对于每一行 K <的值不起作用/ em>不同。
  • 即使是移动平均值方法似乎也不适合这种情况,因为对于每一行,约束都会有所不同。
  • 手动设置此类约束不是一个选项,因为行数很大,我想查找异常值的文件数也是如此。

根据我的理解,有哪些更好的选择:

  • 使用this - &#34;使用多种方法检测异常检测&#34;。 如果是,我该怎么做?

  • 任何其他特定包裹?可能在熊猫?如果是的话,我该怎么做?

非常感谢任何示例,帮助或建议。

0 个答案:

没有答案