나는 여러 가지 카운트 데이터 세트에 대한 이상치 탐지와 관련하여 상당히 직설적 인 문제라고 생각했습니다. 특히, 일련의 카운트 데이터에서 하나 이상의 값이 분포의 나머지 카운트에 비해 예상보다 높거나 낮은 지 확인하고 싶습니다.
혼란스러운 요소는 3,500 개의 분포에 대해이 작업을 수행해야하며 일부는 0으로 과도하게 분산 된 포아송에 적합하고 다른 일부는 음 이항 또는 ZINB에 가장 잘 맞지만 다른 분포는 정규 분포에있을 수 있다는 것입니다. 이러한 이유로 간단한 Z- 점수 또는 분포도는 많은 데이터 세트에 적합하지 않습니다. 다음은 특이 치를 감지하려는 카운트 데이터의 예입니다.
counts1=[1 1 1 0 2 1 1 0 0 1 1 1 1 1 0 0 0 0 1 2 1 1 2 1 1 1 1 0 0 1 0 1 1 1 1 0
0 0 0 0 1 2 1 1 1 1 1 1 0 1 1 2 0 0 0 1 0 1 2 1 1 0 2 1 1 1 0 0 1 0 0 0
2 0 1 1 0 2 1 0 1 1 0 0 2 1 0 1 1 1 1 2 0 3]
counts2=[0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
1 1 0 0 0]
counts3=[14 13 14 14 14 14 13 14 14 14 14 14 15 14 14 14 14 14 14 15 14 13 14 14
15 12 13 17 13 14 14 14 14 15 14 14 13 14 13 14 14 14 14 13 14 14 14 15
15 14 14 14 14 14 15 14 1414 14 15 14 14 14 14 14 14 14 14 14 14 14 14 13 16]
counts4=[0 3 1.......]
and so on up to counts3500.
처음에는 각 분포에 모델 세트를 적용하고 AIC 또는 기타에 따라 가장 적합한 모델을 선택하는 Python 또는 R에서 루프를 작성해야한다고 생각했습니다 (R의 fitdistrplus?). 그런 다음 주어진 분포에 대해 극한이 무엇인지 물어볼 수있었습니다 (꼬리에 해당하는 개수, 예를 들어 "4"의 개수는 위의 counts1 분포에서 특이 치입니까?). 그러나 이것이 유효한 전략인지 확신 할 수 없으며, 내가 알지 못하는 카운트 데이터의 특이 치를 결정하는 간단한 방법론이 나에게 생겼습니다. 나는 광범위하게 검색했으며 내가보고 싶은 분포의 수를 고려할 때 내 문제에 적합한 것으로 보이지는 않았습니다.
나의 궁극적 인 목표는 가장 통계적으로 적절한 방법론을 사용하여 각 카운트 분포에 대한 카운트의 증가 또는 감소를 감지하는 것입니다.