Vous êtes sur la page 1sur 63

INTRODUCTION SAS

BH Nicot
Fvrier 2011

QUE PEUT-ON FAIRE AVEC SAS ?


Immenses possibilits en traitements statistiques et cartographiques
(documentation : https://support.sas.com/pubscat/booklist.jsp?attr=category&val=SAS+Documentation 551 volumes, 50 000 100 000 pages, 37 000 USD)

Il nest pas question de matriser SAS Identifier les besoins Choisir quelques fonctions et procdures Savoir utiliser laide : http://support.sas.com/documentation/index.html
2

QUE POURREZ-VOUS FAIRE AVEC SAS ?


Crer des tables SAS partir de fichiers texte (txt, csv, dbf) ou Excel Manipuler des tables SAS existantes (cration ou
suppression de variables, concatnation horizontale ou verticale, extraction de donnes)

Exporter des tables SAS (vers Excel ou vers fichier texte) Faire des calculs statistiques (calculs deffectifs et de frquences,
analyse de distribution, valeurs extrmes, quantiles; rgressions)

Aller plus loin tout seul par la connaissance du mcanisme de SAS et


la recherche daides sur internet
3

QUOI A RESSEMBLE ?

LES FENTRES
Fentre diteur (ou diteur amlior) : on y crit les
programmes

Fentre Journal : on y lit les ractions de SAS lxcution des

programmes En bleu : TVB ; en vert : quelque chose dinattendu ; en rouge : erreur grave

Fentre Explorateur : on y accde aux diffrentes bibliothques


contenant les tables SAS

Fentre Rsultats et fentre Sortie : on y trouve les rsultats


de certains traitements
5

LE FONCTIONNEMENT DE SAS
Table SAS : base de donnes, organise en tableau avec des variables (colonnes)
et des observations (lignes)

Libname (library name) : nom de bibliothque , permet SAS daccder un


dossier Windows, (bibliothque) o lon trouve les bases (ou tables) SAS

tape data (data step) : opration de cration de tables SAS Fonctions : oprations ralises sur des variables

Procdure (PROC ) : sous-programme ( boite noire ), que lon


adapte aux besoins avec des instructions et des options
6

LE FONCTIONNEMENT DE SAS (SUITE)


Un programme est une suite dinstructions La syntaxe est importante et doit tre respecte (les couleurs permettent de contrler la syntaxe) Chaque instruction se termine par un pointvirgule : ; Chaque programme se termine par linstruction run; Des commentaires peuvent tre insrs, dlimits par /* et */ ou *> et ;
7

POUR COMMENCER : LE LIBNAME


Syntaxe complte du nom de table : libname.nom_table MAPS, SASHELP et SASUSER sont des libnames permanents Work est un libname temporaire, effac la fin de la session Pour crer un libname (8 caractres maxi) : De prfrence, inclure la dfinition du libname dans le programme (que lon sauvegardera) On peut aussi crer un libname dans la fentre Explorateur :
Fichier > Nouveau On indique le nom, on coche ventuellement la case activer au dmarrage , on indique le chemin windows.

CRIRE UN PROGRAMME (exemple)


Instructions data et set :
Option keep (ne garder que) : Fonction (cration dune nouvelle variable) : Apposition dun label une variable (facultatif) : Excution (cours !) :
Touche F8 ou outil cours !

ATTENTION !
Pas de confirmation dcrasement dune base
On a dans la bibliothque mabiblio la table 1 (dorigine) et la table 2.

Mais si on crit
On na plus alors dans la bibliothque mabiblio que la table 1 avec trois variables.

Do lintrt de travailler dans la base work

10

CRATION DUNE BASE SAS


Cration dans une tape data Importation partir dun fichier
texte (.txt, .csv ou autre dlimiteur) dBase (.dbf) Excel (xls, et xlsx avec SAS 9.2)

11

CRATION DANS UNE TAPE DATA


length : dfinit la longueur des variables texte ($) input : indique le nom, lordre et le type des variables ($ suit le nom des variables texte) cards (ou datalines) prcde la liste des observations les variables sont spares par des espaces ou tabulations point-virgule sur une ligne aprs On termine par run; On mets les label dans une autre tape data
12

IMPORTATION DE FICHIER
Assistant dimportation :
Fichier > Importer donnes
On peut gnrer un programme PROC IMPORT que lon pourra rutiliser

Fichier texte : Fichier dBase : Fichier Excel :

13

Contenu dune base SAS


Dans lexplorateur SAS :
Pour tout savoir : Bouton droit > Proprits Pour afficher seulement les variables : Bouton droit > Afficher colonnes

Avec PROC CONTENTS :

14

LES PREMIRES OPRATIONS DANS UNE TAPE DATA


Suppression de variables et/ou dobservations
( extraction dune table partir dune autre table)

Cration de variables

Concatnation verticale (ajouter des observations dune autre table) Concatnation horizontale (ajouter des variables dune autre table)
15

Suppression de variables et/ou dobservations


Pour les variables, on prcise
soit celles que lon garde : keep ; soit celles que lon supprime : drop ;

Pour les observations, on prcise


Soit celles que lon garde : if ; Soit celles que lon supprime : if then delete;

16

SUPPRESSION DE VARIABLES
On indique la ou les variables que lon supprime (avec drop) :
On indique les variables que lon garde (avec keep) : Ne pas mettre des keep et des drop dans la mme tape data
17

SUPPRESSION DOBSERVATIONS
Soit on indique une condition que respectent les observations que lon garde (avec if) :
Si la condition porte sur une variable alphanumrique, il faut des guillemets

On peut mettre plusieurs conditions (avec if and) :

On peut mettre des conditions alternatives (avec if or) :

18

SUPPRESSION DOBSERVATIONS (SUITE)


Soit on indique une condition que respectent les observations quon supprime (if then delete) :
Si la condition porte sur une variable alphanumrique, il faut des guillemets :

On peut mettre plusieurs conditions (avec if and then delete) :

On peut mettre des conditions alternatives (avec if or then delete) :

19

SUPPRESSION DOBSERVATIONS (SUITE)


La condition (pour garder ou supprimer) peut utiliser des fonctions, par exemple la fonction substr quivalente
la fonction Excel STXT :

=STXT(texte;no_dpart;no_car) substr(texte,no_dpart,no_car)

On peut, dans la mme tape data, combiner des conditions pour garder ou supprimer des observations avec des keep ou drop pour garder ou supprimer des variables.

20

CRATION DE VARIABLES
Variable numrique :
oprateurs :
+ (addition) (soustraction) / (division) * (multiplication) ** (puissance)

fonctions :
sqrt (racine carre) log (logarithme nprien) Attention : une opration sur une valeur manquante gnre une valeur manquante
21

CRATION DE VARIABLES (SUITE)


Variable alphanumrique : fonctions
Extraction de caractres : substr Concatnation : || ou !!
(quivalent de lesperluette & en Excel)

Il y a beaucoup dautre fonctions (voir aide)

22

TRANSFORMATION DE VARIABLE
Alphanumrique numrique : Numrique alphanumrique :
Exemple : convertir un depcom se trouvant sous forme numrique en alphanumrique :

Pour mmoire, en Excel : < 10000 correspond la version numrique des depcom des communes appartenant aux dpartements 01 09

Renommer :
23

SCINDER UNE BASE SAS


Crer deux ou plusieurs bases partir dune seule, sur un ou plusieurs critres

Variante pour la 4e ligne :


24

CONCATNATION VERTICALE
Mettre plusieurs bases la suite lune de lautre (= ajouter des observations)
Les variables de mme nom doivent avoir le mme type (alpha ou num) et la mme longueur Si une variable dune base nexiste pas dans lautre, les observations de cette dernire auront des valeurs manquantes pour cette variable :
"" ou .
Rappel : une opration sur une valeur manquante gnre une valeur manquante
25

CONCATNATION HORIZONTALE
Jointure ( Raboutage ) de deux tables sur une variable commune

26

CONCATNATION HORIZONTALE
(SUITE)

On peut rabouter
plus que deux tables sur plus quune variable commune

Toutes les tables doivent tre tries sur la ou les variables communes avec la procdure proc sort Les modalits de la variable de jointure doivent tre uniques dans au moins une des tables
27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63