Quando plogo um histograma dos meus dados, ele tem dois picos:
Isso significa uma potencial distribuição multimodal? Eu executei o dip.test
em R ( library(diptest)
) e a saída é:
D = 0.0275, p-value = 0.7913
Posso concluir que meus dados têm uma distribuição multimodal?
DADOS
10346 13698 13894 19854 28066 26620 27066 16658 9221 13578 11483 10390 11126 13487
15851 16116 24102 30892 25081 14067 10433 15591 8639 10345 10639 15796 14507 21289
25444 26149 23612 19671 12447 13535 10667 11255 8442 11546 15958 21058 28088 23827
30707 19653 12791 13463 11465 12326 12277 12769 18341 19140 24590 28277 22694 15489
11070 11002 11579 9834 9364 15128 15147 18499 25134 32116 24475 21952 10272 15404
13079 10633 10761 13714 16073 23335 29822 26800 31489 19780 12238 15318 9646 11786
10906 13056 17599 22524 25057 28809 27880 19912 12319 18240 11934 10290 11304 16092
15911 24671 31081 27716 25388 22665 10603 14409 10736 9651 12533 17546 16863 23598
25867 31774 24216 20448 12548 15129 11687 11581
r
hypothesis-testing
distributions
self-study
histogram
user1260391
fonte
fonte
Respostas:
O @NickCox apresentou uma estratégia interessante (+1). No entanto, posso considerá-lo de natureza mais exploratória, devido à preocupação que @whuber aponta .
Deixe-me sugerir outra estratégia: você pode ajustar um modelo de mistura finita gaussiana. Observe que isso pressupõe fortemente que seus dados são extraídos de uma ou mais normais verdadeiras. Como @whuber e @NickCox apontam nos comentários, sem uma interpretação substantiva desses dados - apoiada por uma teoria bem estabelecida - para apoiar essa suposição, essa estratégia também deve ser considerada exploratória.
Primeiro, vamos seguir a sugestão de @ Glen_b e examinar seus dados usando o dobro de posições:
Ainda vemos dois modos; se alguma coisa, eles aparecem mais claramente aqui. (Observe também que a linha de densidade do kernel deve ser idêntica, mas parece mais espalhada devido ao maior número de posições.)
Agora vamos ajustar um modelo de mistura finita gaussiana. Em
R
, você pode usar oMclust
pacote para fazer isso:Dois componentes normais otimizam o BIC. Para comparação, podemos forçar um ajuste de um componente e executar um teste de razão de verossimilhança:
Isso sugere que é extremamente improvável que você encontre dados tão unodais quanto os seus se eles vierem de uma única distribuição normal verdadeira.
Algumas pessoas não se sentem confortáveis usando um teste paramétrico aqui (embora, se as premissas se mantiverem, não conheço nenhum problema). Uma técnica amplamente aplicável é usar o Método de ajuste cruzado de inicialização paramétrica (descrevo o algoritmo aqui ). Podemos tentar aplicá-lo a estes dados:
As estatísticas de resumo e os gráficos de densidade do kernel para as distribuições de amostragem mostram vários recursos interessantes. A probabilidade de log para o modelo de componente único raramente é maior que a do ajuste de dois componentes, mesmo quando o verdadeiro processo de geração de dados tem apenas um componente e, quando é maior, a quantidade é trivial. A idéia de comparar modelos que diferem em sua capacidade de ajustar dados é uma das motivações por trás do PBCM. As duas distribuições de amostragem quase não se sobrepõem; apenas 0,35%
x2.d
são inferiores ao valor máximox1.d
valor. Se você selecionasse um modelo de dois componentes se a diferença na probabilidade de log fosse> 9,7, você selecionaria incorretamente o modelo de um componente 0,01% e o modelo de dois componentes 0,02% do tempo. Estes são altamente discrimináveis. Se, por outro lado, você optar por usar o modelo de um componente como hipótese nula, o resultado observado será suficientemente pequeno para não aparecer na distribuição empírica da amostra em 10.000 iterações. Podemos usar a regra 3 (veja aqui ) para colocar um limite superior no valor-p, ou seja, estimamos que seu valor-p seja menor que 0,0003. Ou seja, isso é altamente significativo.fonte
No seguimento das ideias em @ resposta e os comentários de Nick, você pode ver o quão grande as necessidades de largura de banda para ser a apenas alisar o modo secundário:
Pegue essa estimativa de densidade do kernel como nulo proximal - a distribuição mais próxima dos dados, mas ainda consistente com a hipótese nula de que é uma amostra de uma população unimodal - e simule a partir dela. Nas amostras simuladas, o modo secundário nem sempre parece tão distinto, e você não precisa ampliar tanto a largura de banda para nivelá-la.
A formalização dessa abordagem leva ao teste realizado em Silverman (1981), "Usando estimativas de densidade de núcleo para investigar a modalidade", JRSS B , 43 , 1. O
silvermantest
pacote de Schwaiger & Holzmann implementa esse teste e também o procedimento de calibração descrito por Hall & York ( 2001), "Na calibração do teste de Silverman para multimodalidade", Statistica Sinica , 11 , p 515, que ajusta o conservadorismo assintótico. A realização do teste em seus dados com uma hipótese nula de unimodalidade resulta em valores de p de 0,08 sem calibração e 0,02 com calibração. Não estou familiarizado o suficiente com o teste de mergulho para adivinhar por que ele pode ser diferente.Código R:
fonte
->
; Estou apenas confuso.As coisas para se preocupar incluem:
O tamanho do conjunto de dados. Não é pequeno, nem grande.
A dependência do que você vê na origem do histograma e na largura da lixeira. Com apenas uma opção evidente, você (e nós) não tem idéia de sensibilidade.
A dependência do que você vê no tipo e largura do kernel e quaisquer outras opções feitas na estimativa de densidade. Com apenas uma opção evidente, você (e nós) não tem idéia de sensibilidade.
Em outros lugares, sugeri provisoriamente que a credibilidade dos modos é suportada (mas não estabelecida) por uma interpretação substantiva e pela capacidade de discernir a mesma modalidade em outros conjuntos de dados do mesmo tamanho. (Maior é melhor também ....)
Não podemos comentar sobre nenhum deles aqui. Uma pequena possibilidade de repetibilidade é comparar o que você obtém com amostras de bootstrap do mesmo tamanho. Aqui estão os resultados de um experimento de token usando o Stata, mas o que você vê é arbitrariamente limitado aos padrões do Stata, que são documentados como arrancados do ar . Eu tenho estimativas de densidade para os dados originais e para 24 amostras de inicialização do mesmo.
A indicação (nem mais, nem menos) é o que acho que analistas experientes adivinhariam de qualquer maneira do seu gráfico. O modo esquerdo é altamente repetível e o direito é claramente mais frágil.
Observe que há uma inevitabilidade nisso: como há menos dados próximos do modo direito, eles nem sempre reaparecem em uma amostra de autoinicialização. Mas este também é o ponto chave.
Observe que o ponto 3. acima permanece intocado. Mas os resultados estão em algum lugar entre unimodal e bimodal.
Para os interessados, este é o código:
fonte
Identificação não paramétrica do modo LP (nome do algoritmo LPMode , a ref do artigo é fornecida abaixo)
MaxEntModos [triângulos de cor vermelha na plotagem]: 12783.36 e 24654.28.
L2Modos [triângulos de cor verde na plotagem]: 13054.70 e 24111.61.
Interessante notar as formas modais, especialmente a segunda que mostra considerável distorção (o modelo da Mistura Gaussiana Tradicional provavelmente falhará aqui).
Mukhopadhyay, S. (2016) Identificação do modo em larga escala e ciências orientadas a dados. https://arxiv.org/abs/1509.06428
fonte