Tuesday 17 October 2017

Stata 12 moving average


Eu tenho uma lista de pessoas, tempos de registro e pontuação. Em Stata eu quero calcular uma média móvel de pontuação com base em uma janela de tempo em torno de cada observação (não uma janela com base no atraso / líder número de observações). Por exemplo, supondo / - 2 dias de cada lado e não incluindo a observação atual, estou tentando calcular algo como isto: Ive tentou definir o dataset com tsset e, em seguida, usar tssmooth. Mas não conseguia fazê-lo funcionar. Uma vez que pode haver várias observações para um determinado período de tempo eu não tenho certeza se esta é mesmo a abordagem certa. Além disso, na realidade, a variável dia é um tc timestamp. Perguntou 6 de dezembro às 16:04 tsset não pode ajudar aqui mesmo se você fez seus horários regularmente espaçados, como você tem alguns valores repetidos de tempo, mas seus dados não se qualificam como dados do painel no sentido Statas. Mas o problema deve render para um loop sobre possibilidades. Primeiro, vamos dar o exemplo literalmente usando dias inteiros. Aqui assumimos valores ausentes. O princípio a levar adiante é a média dos outros (soma de todos - este valor) / (número de valores - 1) Na prática, você não quer fazer um loop em todas as possíveis datas-vezes em milissegundos. Então, tente um loop sobre as observações desta forma. Observe os elementos ltpseudocodegt. Este artigo também é relevante: se falhas são possíveis, uma linha precisa ser mais complicada: significando que se o valor atual está ausente, subtrair 0 da soma e 0 da contagem de observações. EDIT: Durante 2 dias em milissegundos, explorar a função incorporada e usar cofd (2).

No comments:

Post a Comment