Existem 3 principais funções no pacote Changepoint, cpt.mean
, cpt.var
e cpt.meanvar
. Como profissional, essas são as únicas funções no pacote que você precisa. Se você acha que seus dados podem conter uma alteração na média, use a cpt.mean
função etc.
Na próxima pergunta, você deve se perguntar se está procurando uma ou várias alterações nos seus dados. O method
argumento lida com isso, há AMOC para no máximo uma alteração e PELT, BinSeg e SegNeigh para várias alterações. De qual método de vários pontos de mudança você deseja usar depende:
a) Sua escolha do método de distribuição / livre de distribuição (veja abaixo) e
b) Quanto tempo você tem / qual a precisão que deseja que sua resposta seja. O BinSeg é rápido, mas aproximado, o PELT é exato e rápido, mas não pode ser usado em todas as distribuições, o SegNeigh é exato, mas lento.
A próxima pergunta é quais suposições você pode / está disposto a fazer sobre seus dados. A chave aqui é que a suposição se aplica a cada conjunto de dados entre alterações e não a todos os dados. Por exemplo, você pode assumir uma distribuição Normal, mas se fizer um teste para Normalidade em todos os dados, provavelmente ocorrerá falha (devido às possíveis alterações). Assim, normalmente fazemos uma suposição, executamos a análise do ponto de mudança e depois checamos as suposições com base nas mudanças identificadas. Novamente, dependendo do tipo de alteração, existem diferentes métodos de distribuição e livre de distribuição. Consulte a documentação de cada função para obter as opções e fique à vontade para comentar qual estatística de teste você está pensando em usar e eu posso listar as suposições.
Finalmente, você olha para a penalidade. A penalidade fornece um compromisso entre muitas pequenas alterações e nenhuma alteração. Portanto, se você definir a penalidade como 0, receberá uma alteração em todos os locais possíveis e se definir a penalidade para o infinito, não receberá alterações. O valor apropriado da penalidade depende dos seus dados e da pergunta que você deseja responder. Por exemplo, você pode ter alterações na média de 0,5 unidades, mas pode estar interessado apenas em alterações de mais de 1 unidade. Existem várias maneiras de escolher sua penalidade:
"by-eye", ou seja, tente alguns valores diferentes até encontrar um que pareça apropriado para o seu problema.
"cotovelo", isto é, representa o número de pontos de mudança identificados contra a penalidade utilizada. Isso cria uma curva na qual pequenos valores da penalidade produzem alterações grandes (falsas) e, à medida que a penalidade diminui, essas alterações falsas caem rapidamente, essa taxa diminui à medida que apenas as mudanças verdadeiras são deixadas antes de cair lentamente para nenhuma alteração para penalidades maiores. . A idéia é encaixar 2 linhas retas nessa curva e escolher a penalidade onde elas cruzam. Isso produz uma maneira ad-hoc, mas mais objetiva, de escolher a penalidade que 1.
use um critério de informação. Existem alguns como AIC, BIC / SIC, Hannan-Quinn incluídos no pacote. Existem outros que não estão incluídos no pacote, mas você pode fornecer uma fórmula, pen.value
se desejar.
Se você precisar de mais informações ou esclarecimentos sobre pontos específicos, basta comentar e tentarei responder.