Estou medindo a existência de resposta nas medições de sinais celulares. O que fiz foi primeiro aplicar um algoritmo de suavização (Hanning) às séries temporais de dados e depois detectar picos. O que eu recebo é o seguinte:
Se eu quisesse tornar a detecção da resposta um pouco mais objetiva do que "sim, você vê um aumento na queda contínua", qual seria a melhor abordagem? É para obter a distância dos picos de uma linha de base determinada por regressão linear?
(Eu sou um codificador python e quase não tenho entendimento de estatística)
Obrigado
Respostas:
Parece que, a partir do seu comentário de 25 de outubro, você está interessado em encontrar e caracterizar algoritmicamente dois recursos principais: o decaimento da resposta inicial seguido por um ciclo de maior resposta e o decaimento subsequente. Presumo que os dados sejam observados em intervalos de tempo discretos.
Aqui está o que eu tentaria:
Nesse ponto, você terá os valores de tempo associados a
uma. o início da decadência inicial
b. o início da ascensão
c. o início da segunda decadência
Você pode fazer o que deseja analiticamente para avaliar as alterações.
Pode ser melhor deixar os dados falarem por si mesmos: em várias séries, quando você aplica esse método, qual é a mudança típica de tamanho na alta, quando ocorre normalmente no período de decaimento e quanto tempo dura? E como é a distribuição desse aumento em termos de onde, quão grande e quanto tempo? Conhecendo essas estatísticas, é possível caracterizar melhor uma recuperação específica como estando dentro da tolerância, com relação ao local em que ocorre, assim como seu tamanho e duração. A chave do meu entendimento seria identificar facilmente onde essas mudanças estão ocorrendo. O restante do que descrevi é simples de calcular.
fonte
Aqui estão algumas idéias, mas eu de cabeça para baixo que podem funcionar ...
Derivadas: se você pegar seu array e subtrair os elementos um do outro para obter um array com menos um ponto, mas essa é a primeira derivada. Se você agora suavizar isso e procurar a mudança de sinal, isso poderá detectar seu impacto.
Médias móveis: talvez o uso de 2 médias móveis atrasadas (exponencial ou em janelas) possa revelar o solavanco grande e ignorar o menor. Basicamente, a largura da média móvel da janela menor deve ser maior que a largura dos solavancos que você deseja ignorar. A EMA mais ampla deve ser mais larga, mas não muito larga para detectar o solavanco.
Você procura quando eles cruzam e subtraem o atraso (janela / 2) e essa é uma estimativa onde está o seu impacto. http://www.stockopedia.com/content/trading-the-golden-cross-does-it-really-work-69694/
Modelos lineares: faça uma série de modelos lineares de largura suficiente com várias saliências, digamos 100 pontos. Agora faça um loop no conjunto de dados, gerando regressões lineares na variável X. Basta olhar para o coeficiente de X e ver onde a grande mudança de sinal aconteceu. Essa é uma grande colisão.
O exposto acima é apenas conjectura da minha parte e provavelmente existem maneiras melhores de fazê-lo.
fonte