在Python中识别一组1-D二进制向量中的异常值

在Python中识别一组1-D二进制向量中的异常值,python,scipy,dbscan,mahalanobis,Python,Scipy,Dbscan,Mahalanobis,我正在研究在具有n个特征的m1-D二进制向量时识别离群向量的最佳方法,例如: a =[[1, 0, 1, 1, 1, 0, 1], [0, 0, 0, 1, 1, 1, 0], [0, 1, 1, 0, 0, 1, 1]] 在我的例子中,n和m是100年代的。我想确定哪些向量是总体中的异常值。我在SciPy和HDBSCAN等包中发现了一些使用马氏距离的信息(注意,在识别这些异常值之后,我将对它们进行聚类,以查看这些异常值中是否存在任何进一步的模式)。在这两种情况下,示例都是有限

我正在研究在具有n个特征的m1-D二进制向量时识别离群向量的最佳方法,例如:

a =[[1, 0, 1, 1, 1, 0, 1],
    [0, 0, 0, 1, 1, 1, 0],
    [0, 1, 1, 0, 0, 1, 1]]

在我的例子中,n和m是100年代的。我想确定哪些向量是总体中的异常值。我在SciPy和HDBSCAN等包中发现了一些使用马氏距离的信息(注意,在识别这些异常值之后,我将对它们进行聚类,以查看这些异常值中是否存在任何进一步的模式)。在这两种情况下,示例都是有限的,但我也不知道这是否是用于二进制向量的最佳方法。如有任何建议、示例或参考,将不胜感激

你说的异常值是什么意思?除
0
1
之外的值??你能举个例子吗?向量是异常值。因此,例如,如果将[0,0,0,0,0,0,0]添加到上面的集合中,如果其他集合的1和0的数量相当,则该集合可能会突出显示为异常值。在马哈拉诺比中,我相信每个向量都被分配了一个相对于总体参考的标准偏差值。马哈拉诺比在中仅对连续数据有意义。不要在二进制数据上使用它。第一个向量与第二个向量在4个位置不同,与第三个向量在5个位置不同。我认为0向量并不比第一个向量更不寻常。