J'ai 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 a tenté 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, exploitez la fonction intégrée et utilisez cofd (2).MOVAVG: Module Stata utilisant Mata pour générer des Moyennes Mobiles Pour demander une correction, merci de mentionner ces éléments handle: RePEc: boc: bocode: s457476 Reportez-vous aux informations générales sur la façon de corriger les données dans RePEc. Pour des questions techniques concernant cet article, ou pour corriger ses auteurs, titre, résumé, information bibliographique ou de téléchargement, contactez: (Christopher F Baum) Si vous avez écrit cet article et ne sont pas encore enregistrés avec RePEc, nous vous encourageons à le faire ici . Cela permet de lier votre profil à cet élément. Il vous permet également d'accepter les citations potentielles à cet article que nous sommes incertains. Si les références sont totalement absentes, vous pouvez les ajouter à l'aide de ce formulaire. Si les références complètes énumèrent un élément qui est présent dans RePEc, mais que le système n'a pas lié à celui-ci, vous pouvez aider avec ce formulaire. Si vous connaissez des éléments manquants en citant celui-ci, vous pouvez nous aider à créer ces liens en ajoutant les références pertinentes de la même manière que ci-dessus, pour chaque élément référant. Si vous êtes un auteur enregistré de cet article, vous pouvez également vérifier l'onglet de citations dans votre profil, car il peut y avoir des citations en attente de confirmation. Veuillez noter que les corrections peuvent prendre quelques semaines pour filtrer les différents services de RePEc. Plus de services Suivre la série, les revues, les auteurs et plus Nouveaux articles par courriel Abonnez-vous aux nouveautés de RePEc Enregistrement de l'auteur Profils publics pour les chercheurs en économie Divers classements de la recherche en économie et domaines connexes Qui était un étudiant dont RePEc RePEc Biblio Curated articles amp Des articles sur divers sujets économiques Téléchargez votre article pour être listé sur RePEc et IDEAS EconAcademics Blog agrégateur pour la recherche en économie Plagiat Cas de plagiat en économie Documents sur le marché du travail RePEc série de documents de travail dédiés au marché du travail Fantasy League Prétendez vous êtes à la tête d'une économie Et les limitations Statarsquos les plus évidentes (en anglais seulement) Pour calculer les moyennes mobiles est la fonction ma () de egen. Étant donné une expression, il crée une moyenne mobile de cette expression. Par défaut, la valeur 3. doit être impaire. Cependant, comme l 'entrée manuelle indique, egen, ma () ne peut pas être combiné avec varlist:. Et, pour cette seule raison, elle ne s'applique pas aux données des groupes spéciaux. En tout cas, il se trouve en dehors de l'ensemble des commandes spécifiquement écrites pour les séries chronologiques, voir les séries temporelles pour plus de détails. Autres approches Pour calculer les moyennes mobiles pour les données de panel, il y a au moins deux choix. Les deux dépendent de l'ensemble de données ayant été tsset à l'avance. Cela vaut vraiment la peine de le faire: non seulement vous pouvez vous épargner à plusieurs reprises en spécifiant variable de panneau et variable de temps, mais Stata se comporte intelligemment compte tenu des lacunes dans les données. 1. Écrivez votre propre définition à l'aide de la génération en utilisant des opérateurs de série chronologique tels que L. et F.. Donner la définition de la moyenne mobile comme argument à une déclaration generate. Si vous faites cela, vous n'êtes naturellement pas limité aux moyennes mobiles pondérées (non pondérées) également pondérées calculées par egen, ma (). Par exemple, des moyennes mobiles à pondération égale à trois périodes seraient données par et certains poids peuvent être facilement spécifiés: Vous pouvez bien sûr spécifier une expression telle que log (myvar) au lieu d'un nom de variable tel que myvar. Un avantage majeur de cette approche est que Stata fait automatiquement la bonne chose pour les données de panel: les valeurs de départ et de retard sont élaborées au sein des panneaux, tout comme la logique dicte qu'ils devraient l'être. L'inconvénient le plus notable est que la ligne de commande peut être assez longue si la moyenne mobile implique plusieurs termes. Un autre exemple est une moyenne mobile unilatérale fondée uniquement sur les valeurs précédentes. Cela pourrait être utile pour générer une anticipation adaptative de ce qu'une variable sera fondée uniquement sur l'information à ce jour: que pourrait-on prévoir pour la période en cours sur la base des quatre dernières valeurs, en utilisant un système de pondération fixe (un délai de 4 périodes pourrait être Surtout utilisé avec les séries trimestrielles). 2. Utilisez egen, filter () de SSC Utilisez le filtre de fonction egen écrit () de l'ensemble egenmore sur SSC. Dans Stata 7 (mis à jour après le 14 novembre 2001), vous pouvez installer ce paquet après par lequel l'aide egenmore indique des détails sur filter (). Les deux exemples ci-dessus seraient rendus (dans cette comparaison, l'approche de génération est peut-être plus transparente, mais nous verrons un exemple du contraire dans un instant). Les retards sont un numlist. Les conducteurs sont des retards négatifs: dans ce cas, -11 se dilate à -1 0 1 ou conduit 1, retard 0, décalage 1. Les coefficients, un autre nombre, multiplient les éléments retardés ou principaux correspondants: dans ce cas, ces éléments sont F1.myvar . Myvar et L1.myvar. L'effet de l'option de normalisation consiste à mettre à l'échelle chaque coefficient par la somme des coefficients de telle sorte que coef (1 1 1) normalise soit équivalente à des coefficients de 13 13 13 et coef (1 2 1) normale est équivalente à des coefficients de 14 12 14 Vous devez spécifier non seulement les décalages, mais aussi les coefficients. Parce que egen, ma () fournit le cas également pondéré, la raison principale pour egen, filter () est de soutenir le cas pondéré inégalement, pour lequel vous devez spécifier des coefficients. On pourrait également dire que l'obligation faite aux utilisateurs de spécifier des coefficients est un peu plus de pression sur eux pour penser à quels coefficients ils veulent. La principale justification pour des poids égaux est, nous devinons, la simplicité, mais des poids égaux ont de mauvaises propriétés de domaine fréquentiel, pour ne citer qu'une seule considération. Le troisième exemple ci-dessus pourrait être l'un ou l'autre est à peu près aussi compliqué que l'approche générer. Il ya des cas où egen, filter () donne une formulation plus simple que generate. Si vous voulez un filtre binomial à neuf termes, que les climatologues trouvent utile, il semble peut-être moins horrible et plus facile à obtenir que, tout comme avec l'approche generate, egen, filter () fonctionne correctement avec les données du panneau. En fait, comme indiqué ci-dessus, cela dépend du jeu de données ayant été tsset à l'avance. Une astuce graphique Après avoir calculé vos moyennes mobiles, vous voudrez probablement regarder un graphique. La commande tsgraph utilisateur-écrit est intelligente au sujet des ensembles de données de tsset. Installez-le dans un Stata 7 à jour par ssc inst tsgraph. Qu'en est-il sous-ensemble avec si aucun des exemples ci-dessus ne font usage de restrictions si. En fait, egen, ma () ne permettra pas si elle doit être spécifiée. Occasionnellement, les gens veulent utiliser si lors du calcul des moyennes mobiles, mais son utilisation est un peu plus compliquée qu'il est habituellement. Qu'attendriez-vous d'une moyenne mobile calculée avec if. Identifions deux possibilités: Faible interprétation: Je ne veux pas voir de résultats pour les observations exclues. Interprétation forte: Je ne veux même pas que vous utilisiez les valeurs pour les observations exclues. Voici un exemple concret. Supposons que, comme conséquence de certaines conditions if, les observations 1-42 sont incluses, mais pas les observations 43 sur. Mais la moyenne mobile de 42 dépendra, entre autres choses, de la valeur d'observation 43 si la moyenne s'étend vers l'arrière et vers l'avant et est de longueur au moins 3, et elle dépendra également de certaines des observations 44 dans certaines circonstances. Notre conjecture est que la plupart des gens iraient pour l'interprétation faible, mais si cela est correct, egen, filter () ne supporte pas si soit. Vous pouvez toujours ignorer ce que vous donrsquot voulez ou même définir des valeurs indésirables à manquer par la suite en utilisant remplacer. Une note sur les résultats manquants aux extrémités de la série Puisque les moyennes mobiles sont des fonctions de lags et de leads, egen, ma () produit manquant où les lags et les leads n'existent pas, au début et à la fin de la série. Une option nomiss oblige à calculer des moyennes mobiles plus courtes et non centralisées pour les queues. En revanche, ni générer ni egen, filter () ne, ou permet, quelque chose de spécial pour éviter les résultats manquants. Si l'une des valeurs requises pour le calcul est manquante, ce résultat est manquant. Il appartient aux utilisateurs de décider si et quelle chirurgie corrective est nécessaire pour ces observations, vraisemblablement après avoir examiné l'ensemble de données et en considérant toute science sous-jacente qui peut être apportée.
No comments:
Post a Comment