olivier godechot

SAS Macros


I sometimes write SAS Macros when I need it. It could be helpful. Enjoy.


Econometrics for SAS



%FELM SAS Macro: FIXED EFFECTS LINEAR MODELS

SAS users have been repeatedly bumping on the limitations of SAS's most basic econometric procedures.

PROC GLM is great for absorbing a single fixed effect but is unable to cluster standard errors and to instrument endogenous covariates.

PROC SYSLIN is great for two-stage least square regressions but is unable to cluster the standard errors or to absorb high dimensionality fixed effects.

PROC SURVEYREG is great for clustering (one way) standard errors but is unable to absorb high dimensionality fixed effects or to instrument endogenous covariates.

For those who use SAS, which still has some advantages for handling large datasets, I've been writing the following %FELM (FIXED EFFECTS LINEAR MODELS) which combines absorbing multiway fixed effects, 3-way clustering and 2SLS instrumental variables regressions.

Download: http://olivier.godechot.free.fr/hopfichiers/felm.sas

 



Macros for network analysis



Sas2Pajek

Sas2pajek est une macro SAS qui transforme une base SAS en fichier de projet Pajek...

Sas2Pajek is a SAS macro that transforms a SAS file into a Pajek project file...



Distance géodésique | Geodesic distance

Le monde est-il petit ? A combien de pas un individu se trouve-t-il d'un autre ? Par où passent les plus courts chemins ? Voici une macro qui calcule les distances dans un réseau pour une base SAS. Un premier programme utilisait la proc SQL, mais celui-ci était très lent et générait des fichiers très volumineux. Voici une nouvelle version, fondée sur programme de James Moody, qui utilise la Proc IML, et qui est sensiblement plus rapide. Ce n'est sûrement pas la méthode la plus rapide (élever des matrices à la puissance k...), mais ça marche.

Utilisation :
1. Sous SAS, soumettre le fichier de macro geodesic.sas
2. Dans un menu éditeur taper :
%geodesic;
3. Soumettre
4. Remplir le formulaire.
5. Taper entrée.

You will find here a macro file in order to calculate the geodesic distance in a network.
Data organisation : You need to have a file with the list or your arcs, that is three variables, the identity of your vertex origin, the identity of the vertex destiny and the arcs intensity.

How to run it ?
1. Submit the geodesic.sas
2. In a program file type :
%geodesic;
3. Submit
4. Fill the form.
5. Press enter.

Enjoy


Coefficient de clustering | Clustering coefficient

Le clustering coefficient est un indicateur de densité locale qui calcule la part moyenne des contacts directs d'un individu qui sont en relation directe. Cet indicateur est depuis l'article de 1998 de Watts et Strogatz fort à l'honneur parce qu'il permet de mieux mesurer la spécificité d'un petit monde. Le monde est petit non pas tant parce que les distances sont courtes mais parce qu'elles sont à la fois courtes et l'interconnaissance locale forte.

Utilisation :
1. Sous SAS, soumettre le fichier de macro cluster.sas
2. Dans un menu éditeur taper %cluster;
3. Remplir le formulaire.
4. Taper entrée.

You will find here a macro file in order to calculate the clustering coefficient.
Data organisation : You need to have a file with the list or your arcs, that is three variables, the identity of your vertex origin, the identity of the vertex destiny and the arcs intensity.

How to run it ?
1. Submit the cluster.sas
2. In a program file type :
%cluster;
3. Submit
4. Fill the form.
5. Press enter.
Enjoy.


Contrainte structurale de Burt | Burt's Structural constraint

Vous trouverez ici une macro pour calculer la contrainte structurale de Burt.
Organisation des données :
Il faut un fichier avec la liste des arcs du réseau : identifiant du vertex d'origine, identifiant du vertex de destinée et valeur d'intensité de l'arc.

Utilisation :
1. Sous SAS, soumettre le fichier de macro burtcstr.sas
2. Dans un menu éditeur taper %burtcstr;
3. Remplir le formulaire.
4. Taper entrée.

You will find here a macro file in order to calculate Burt's structural constraint.
Data organisation : You need to have a file with the list or your arcs, that is three variables, the identity of your vertex origin, the identity of the vertex destiny and the arcs intensity.

How to run it ?
1. Submit the burt.sas
2. In a program file type : %burtcstr;
3. Fill the form.
4. Press enter.
Enjoy.


Macros de statistique textuelle
Text mining Macros



Anatext

Anatext pour SAS 8.0 et supérieur est une macro sas d'analyse textuelle. Elle s'applique soit à un fichier texte, soit à une variable d'une base SAS contenant du texte. Elle crée un "tableau lexical entier". Elle compte les mots, les segments de deux mots et de trois mots de ce texte. Elle propose de faire une analyse factorielle croisant sur le(s) tableau(x) croisé(s) croisant les mots utilisés (au dessus d'un certain seuil) et des variables caractérisant les textes ou les individus de la base de données.


    A propos de la nouvelle version d'anatext.
    Encore une nouvelle modification :
    - Le décompte des mots et segments, directement dans le tableau lexical entier.
    - Une analyse factorielle du tableau lexicale entier avec comme individus les textes ou les variables conservées de la base de donnés

    Deux modifications importantes par rapport à l'ancienne version :
    - Un système pour filtrer une partie des « mots outils » (articles, pronoms, etc.).
    - La possibilité de travailler sur des segments de dix mots (nb : comme dans Alceste) plutôt que des phrases ou des paragraphes.



Mode d'emploi

Anciennes versions pour SAS 6.12



La liste des mots outils pour Anatext

Le fichier sas des motoutils. Fichier pour la nouvelle version d'anatext.


VDmot pour SAS9.0

VDmot est une macro qui repère la présence ou qui compte une ou plusieurs chaines de caractères données dans une variable d'une base SAS contenant du texte. Elle est facile d'emploi.


SAS 9.0 a introduit une nouvelle fonction : la fonction COUNT qui compte le nombre d'occurrences dans une chaine de caractères. Ceci permet d'améliorer la macro. Au lieu de chercher seulement la présence/absence, elle compte aussi le nombre d'occurences d'un mot ou d'une expression.

Anciennes versions



Autres Macros
Other Macros

    Lire une proc freq quand on est feignant : Macro Aidefreq

    Régression logistique avec comparaison à la moyenne et non à la situation de référence : Macro Aidelogi

    Régression classique avec comparaison à la moyenne et non à la situation de référence : Macro Aidereg

  • Un tout petit manuel d'introduction à SAS




  • English | Français

    News   

    OgO: plus ici|more here

    [Publications] Godechot, Olivier, Blackstone vs BlackRock: Our lives in their portfolios. Why asset managers own the world. By Brett Christophers, London: plus ici|more here

    Tweets (rarely/rarement): @OlivierGodechot

    [Webmestre]

    [Fil rss]

    [V. 0.93]

    HOP

    A CMS