Sunday, February 26, 2017

Déménagement Moyenne Stata 12

Lors du calcul d'une moyenne mobile courante, placer la moyenne dans la période de temps moyenne a un sens Dans l'exemple précédent, nous avons calculé la moyenne des 3 premières périodes et l'avons placé à côté de la période 3. Nous aurions pu placer la moyenne au milieu de la Intervalle de temps de trois périodes, c'est-à-dire, à côté de période 2. Cela fonctionne bien avec des périodes de temps impaires, mais pas aussi bien pour des périodes de temps même. Alors, où placer la première moyenne mobile lorsque M 4 Techniquement, la moyenne mobile tomberait à t 2,5, 3,5. Pour éviter ce problème, nous lisser les MA en utilisant M 2. Ainsi, nous lisser les valeurs lissées Si nous avons un nombre moyen de termes pair, nous devons lisser les valeurs lissées Le tableau suivant montre les résultats en utilisant M 4.I ont une liste de personnes , Les temps d'inscription et les scores. Dans Stata je veux calculer une moyenne mobile de score basée sur une fenêtre de temps autour de chaque observation (pas une fenêtre basée sur laggingleading nombre d'observations). Par exemple, en supposant - 2 jours de chaque côté et sans inclure l'observation en cours, Im essayant de calculer quelque chose comme ceci: Ive essayé de définir l'ensemble de données avec tsset, puis utiliser tssmooth. Mais ne pouvait pas le faire fonctionner. Puisqu'il peut y avoir plusieurs observations pour une période donnée, je ne suis pas sûr que ce soit même la bonne approche. De plus, en réalité, la variable day est un tc timestamp. A demandé Dec 6 13 à 16:04 tsset ne peut pas aider ici, même si vous avez fait vos heures régulièrement espacées, comme vous avez quelques valeurs répétées pour le temps, mais vos données ne sont pas admissibles comme des données de panel en sens Statas. Mais le problème devrait céder à une boucle sur les possibilités. Tout d'abord, prenons votre exemple littéralement en utilisant des jours entiers. Ici, nous supposons aucune valeur manquante. Le principe à reporter est la moyenne des autres (somme de tous - cette valeur) (nombre de valeurs - 1) En pratique, vous ne voulez pas boucler toutes les dates possibles en millisecondes. Donc, essayez une boucle sur les observations de cette forme. Notez les éléments ltpseudocodegt. Cet article est également pertinent: si des erreurs sont possibles, une ligne doit être plus compliquée: si la valeur courante est absente, on soustrait 0 de la somme et 0 du nombre d'observations. EDIT: Pendant 2 jours en millisecondes, exploiter la fonction intégrée et utiliser cofd (2).Cette structure de données est tout à fait impropre à l'objet. En supposant un ID identifiant que vous devez refaire. par exemple. Ensuite, une moyenne mobile est facile. Utiliser tssmooth ou simplement générer. par exemple. Plus sur pourquoi votre structure de données est tout à fait impropre: Non seulement le calcul d'une moyenne mobile nécessite une boucle (ne nécessitant pas nécessairement d'egen), mais vous créerez plusieurs nouvelles variables supplémentaires. L'utilisation de ceux dans toute analyse ultérieure serait quelque part entre difficile et impossible. EDIT Ill donner une boucle d'échantillon, tout en ne se déplaçant pas de ma position que c'est une mauvaise technique. Je ne vois pas une raison derrière votre convention de dénomination par laquelle P1947 est un moyen pour 1943-1945 Je suppose que c'est juste une faute de frappe. Supposons que nous ayons des données pour 1913-2012. Pour des moyens de 3 ans, nous perdons un an à chaque extrémité. Cela pourrait être écrit de manière plus concise, au détriment d'une vague de macros dans les macros. Utiliser des poids inégaux est facile, comme ci-dessus. La seule raison d'utiliser egen est qu'il ne renonce pas si il ya des fautes, ce qui va faire. Comme une question d'exhaustivité, notez qu'il est facile de gérer les fautes sans recourir à egen. Et le dénominateur Si toutes les valeurs sont manquantes, cela se réduit à 00 ou manquant. Sinon, si une valeur manque, on ajoute 0 au numérateur et 0 au dénominateur, ce qui équivaut à l'ignorer. Naturellement, le code est tolérable comme ci-dessus pour des moyennes de 3 ans, mais soit pour ce cas ou pour la moyenne sur plus d'années, nous remplacerions les lignes ci-dessus par une boucle, ce qui est ce que fait Egen.


No comments:

Post a Comment