En Introduktion til SAS
|
|
|
- Alfred Kristensen
- 10 år siden
- Visninger:
Transkript
1 En Introduktion til SAS Inge Henningsen Afdeling for Statistik og Operationsanalyse Københavns Universitet Februar udgave
2 i FORORD til 1. udgave Denne introduktion til SAS til brug ved kurset Statistik 0 er udviklet i perioden , og knytter sig til de forelæsningsnoter, der er udarbejdet til dette kursus. Det første SAS-notat blev skrevet i 1989 af Arne A. Andreassen og ere andre har ydet bidraget til arbejdet. I sin nuværende form er introduktionen primært baseret på eksempler, og der er lagt vægt på netop de procedurer, der skal bruges på Statistik 0. For en systematisk fremstilling henvises til SAS-manualerne. Det er planen løbende at revidere materialet om SAS. Forslag til forbedringer er derfor velkomne. København, januar 1994 Inge Henningsen FORORD til 6. udgave. Denne udgave af En Introduktion til SAS er revideret, således at den knytter sig til forelæsningsnoterne til kurserne Statistik og sandsynlighedsregning 1-3, Inge Henningsen: En Introduktion til Statistik, Bind 1, 2 og 3, Afdeling for anvendt Matematik og Statistik, Københavns Universitet København, februar 2005 Inge Henningsen
3 ii
4 Kapitel 1 Indledning Denne introduktion til SAS (Statistical Analysis System) knytter sig til forelæsningsnoterne til kurserne Statistik og sandsynlighedsregning 1-3, Inge Henningsen: En Introduktion til Statistik, Bind 1, 2 og 3, Afdeling for anvendt Matematik og Statistik, Københavns Universitet SAS er et omfattende programsystem til databehandling og statistisk bearbejdelse af data, og denne fremstilling behandler kun en lille del. SAS indeholder en lang række af procedurer, der er inddelt i moduler efter deres anvendelsesområde. På SaSt2 vil der være adgang til modulerne SAS Base, SAS/STAT og SAS/GRAPH, der indeholder henholdvis procedurer til databehandling og -præsentation, til statistisk analyse og til grask præsentation. Der er ikke tilstræbt nogen systematisk gennemgang af SAS. Fremstillingen er baseret på eksempler, og der er lagt vægt på de fundamentale procedurer, der skal bruges på SaSt-kurserne. Yderligere oplysninger kan ndes i SAS Language Guide for Personal Computers, SAS Procedures Guide, SAS/STAT User's Guide og SAS/GRAPH User's Guide. En elementær indføring I SAS på dansk kan ndes I Andersen, A.T, Bedsted, T.V, Feilberg, M. Jakobsen, R.B & Anders Milhøj: Elementær indføring i SAS, Akademisk Forlag, København Et SAS-program indeholder DATA-trin og PROCEDURE-trin (se nærmere i afsnit 3.9). I kapitel 2 gennemgås data-trinnet, og det vises, hvorledes man opretter og indlæser SAS-datasæt. Ved hjælp af eksempler gennemgås omregninger af data og konstruktion af nye variable, og der
5 2 Indledning gives en oversigt over de almindeligste regneudtryk. I kapitel 3 gennemgås fundamentale procedurer til statistisk databehandling, først og fremmest procedurer til beregning af gennemsnit, varians, standardafvigelse etc. og procedurer til tabellering af data, samt simple statistiske beregninger. Kapitel 4 handler om grak, og her gennemgås de to graske procedurer PROC GCHART og PROC GPLOT til tegning af blokdiagrammer og grafer. I et senere kapitel 5 vises, hvorledes t-test og regressionsanalyse kan udføres ved hjælp af SAS.
6 Kapitel 2 Indlæsning og tilrettelæggelse af DATA i SAS 2.1 Indledning I dette kapitel vises, hvorledes man opretter og indlæser SAS-datasæt. Ved hjælp af eksempler gennemgås de omregninger af data, der er nødvendige på SaSt 1-3. Yderligere oplysninger kan ndes i SAS Language Guide for Personal Computers. SAS kræver, at data er bragt på en standardiseret form. Dette opnås ved at indlæse data i et DATA-trin, hvorved der oprettes et SAS-datasæt. Et datasæt, der kan bruges i SAS, består af et antal variable og et sæt af observationer med en observationsværdi for hver af de variable. Bemærk, at SAS-variable ikke behøver at have numeriske værdier. Når datasættet er oprettet, kan man regne på variablene som vist i de følgende programeksempler. Kapitlet er organiseret således, at programmerne står i teksten og alle udskrifterne er samlet sidst i kapitlet. Udskrifterne er lavet med proceduren PRINT, der omtales i afsnit 3.2. Eks Opstilling af data til brug i SAS. Ved en undersøgelse af studentereksamenskarakterer, ønskede man at analysere sammenhæng mellem karakter og niveauet i forskellige fag. For hver eksamination har man en observation med de tre oplysninger fag, niveau og karakter. De kan opstilles i et datasæt som vist i eksempel Datasættet har tre variable: fag, niveau og karakter og otte observationer.
7 4 Indlæsning og tilrettelæggelse af DATA i SAS FAG NIVEAU KARAKTER mat h 10 eng h 9 mat h 7 samf m 6 kem o 8 mat m 8 samf h 13 mus h 5 Her er fag og niveau tekstvariable, mens karakter er en numerisk variabel. 2.2 Indlæsning af data For at bruge SAS på data fra eksempel skal de indlæses. I SAS kan man skrive data direkte ind i programmet. Man kan også hente dem fra et allerede eksisterende SAS-datasæt (eller fra en ASCII l, men det vil ikke blive gennemgået her). Ethvert SAS-program begynder med navnet på det datasæt man vil arbejde med: DATA datanavn; (ordrer) (evt. data) Et datasæt kan enten være midlertidigt eller permanent. Et midlertidigt datasæt slettes, når man forlader programmet. Et permanent datasæt bevares som en l og kan bruges i senere programmer. Datanavnet bestemmer om datasættet bliver midlertidigt eller permanent. Et midlertidigt datasæt har et navn bestående af højst otte tegn. Tegnene kan være bogstaver (A,...,Z), tal (0,...9) eller (_). Det første tegn skal være et bogstav. Et permanent SAS-datasæt skal have et todelt navn f. eks. karakter.data. Datasættene til hjemmeopgaver etc. er af denne type. Oprettelse af permanente datasæt vil blive omtalt i afsnit 2.6. Nedenstående eksempel viser, hvorledes man skriver et datasæt direkte i programlen. Data er studentereksamenskaraktererne fra eksempel Hver observation svarer til en student og indeholder oplysninger om de tre variable fag, niveau, og karakter for den enkelte student. Datasættet navngives ved kommandoen DATA efterfulgt af et datanavn. De variable navngives ved kommandoen INPUT efterfulgt af variabelnavne. Også disse må højst være på otte tegn. Tegnene kan være bogstaver (A,
8 2.2 Indlæsning af data 5...,Z), tal (0,...,9) eller (_). Hvis ikke alle værdierne for en variabel er numeriske, angives dette ved at skrive $ efter navnet som i eksempel Kommandoen CARDS fortæller, at nu kommer data. Derefter følger selve datasættet, hvor hver linie svarer til en observation og hvor værdierne de enkelte variable står i samme kolonne. Manglende værdier angives med. eller en tom plads. Indlæsning af data slutter altid med ';'. I SAS bruges ';' til at adskille kommandoer (men ikke dataværdier). Linieskift betyder ingenting i SAS, når man skriver programmer. SAS skelner heller ikke mellem store og små bogstaver. Efter DATA-trinnet i eksempel vil der være oprettet et SAS-datasæt, der hedder karakter. Der vil være 8 observationer i datasættet, og hver observation indeholder værdier for de tre variable fag, niveau, og karakter. Beder man om en udskrift ser datasættet ud som vist i Udskrift sidst i kapitlet. Kolonnen OBS angiver observationens nummer. Det ligger samtidig i datasættet som en variabel med navn _N_ og kan bruges i senere programtrin. I det følgende bruges den konvention, at SAS-variable, SAS-datasæt, SAS-programmer og SAS-udskrifter angives med maskinskrift. I programmerne angives de faste kommandoer med store bogstaver. Navne man selv kan vælge skrives med småt. Eks Indlæsning af datasæt direkte i program. DATA karakter; INPUT fag $ niveau $ karakter; CARDS; mat 10 eng h 9 mat h 7 samf m 6 kem o mat m 8 samf 13 mus h 5 ; Har man konstrueret et SAS-datasæt kan dette genbruges i et følgende programtrin ved ordren SET, som vist i næste eksempel, der giver samme udskrift som eksempel Eks Indlæsning af eksisterende SAS-datasæt ved SET. DATA karakter; INPUT fag $ niveau $ karakter; CARDS;
9 6 Indlæsning og tilrettelæggelse af DATA i SAS mat h 10 eng h 9 mat h 7 samf m 6 kem o 8 mat m 8 samf h 13 mus h 5 ; DATA nykar; SET karakter; Nu indeholder datasættet nykar en kopi af datasættet karakter. En sådan kopiering bruges, hvis man skal omregne nogle af de variable, men stadig vil bevare det oprindelige datasæt (og det bør man altid). Både karakter og nykar vil blive glemt, når man går ud af programmet, da det ikke er permanente datasæt. Advarsel: Hvis man giver det nye datasæt samme navn som det gamle overskrives det oprindelige datasæt. Dette gælder også for permanente datasæt. 2.3 Konstruktion af deldatasæt Når man skal præsentere og analysere data, er det ofte interessant at udvælge dele af materialet til separat bearbejdning. Det kan enten være en gruppe af observationer eller en gruppe af variable svarende til at man udtager enten rækker eller søjler (eller begge dele) af datamatricen. Det kan også være nødvendigt at konstruere nye variable ved gruppering eller beregning. Sådanne operationer foregår i DATA-trinnet. I de efterfølgende afsnit angives nogle metoder til at klare disse problemer. Eksemplerne går ud fra datasættet karakter indlæst i eksempel 2.2.1, og denne indlæsning forudsættes, når datasættet karakter forekommer, selv om den af pladshensyn ikke skrives hver gang. Udvælgelse af variable Der er to måder at udvælge variable på. Enten angives navnene på de variable, der ønskes bevaret, sammen med ordren KEEP, eller også navnene på de variable, der ønskes fjernet, sammen med ordren DROP. Eks Udvælgelse af variable ved brug af KEEP.
10 2.3 Konstruktion af deldatasæt 7 DATA nykar; SET karakter; KEEP fag karakter; Her indlæses de to variable fag og karakter fra datasættet karakter. Datasættet nykar indeholder nu alle de oprindelige observationer af fag og karakter, mens variablen niveau er ikke med i nykar. Eks Udvælgelse af variable ved brug af DROP. DATA nykar; SET karakter; DROP niveau; Dette program giver samme datasæt som eksempel Har man store datasæt er det af pladshensyn vigtigt at fjerne unødvendige variable, før man bruger procedurer som SORT etc. Udvælgelse af observationer Man kan også udvælge observationer på ere måder. Enten ved at angive hvilke observationer man ønsker at medtage, eller ved at angive hvilke observationer man ikke vil have med. I begge tilfælde har man brug for et udvælgelseskriterium (logisk udtryk). Dette er sætninger, der begynder med IF, og derefter beskriver de betingelser, der skal være opfyldt. Eks Konstruktion af deldatasæt med IF. DATA nykar; SET karakter; IF karakter > 8; Med IF-sætningen opnås, at kun de observationer, hvor karakter > 8, overføres til datasættet nykar. Se Udskrift Bruges IF alene beholder man de udvalgte observationer. Sætningen IF...THEN DELETE har den modsatte virkning. Her udelades de udvalgte observationer som i nedenstående program Eks Konstruktion af deldatasæt med IF...THEN DELETE. DATA nykar; SET karakter; IF karakter > 8 THEN DELETE; Her udelades de observationer, der kom med før. Se Udskrift
11 8 Indlæsning og tilrettelæggelse af DATA i SAS Man kan have ere IFsætninger i samme program. Eks Konstruktion af deldatasæt ved brug af ere IFsætninger. DATA nykar; SET karakter; IF karakter le 8 ; IF fag = 'mat'; Resultatet er vist i Udskrift Bemærk, at værdier for tekstvariable skali'',nårmanmanbrugerdemsammenmed=oglignendeoperatorer. De logiske udtryk kan sammensættes af følgende operatorer. Disse kan skrives med tegn eller med bogstaver, som vist i de to første kolonner. Operatorer Forklaring Eksempel = EQ lig med karakter = 8 NE forskellig fra karakter NE 8 < LT mindre end karakter < 8 > GT større end karakter > 8 <= LE mindre end eller lig karakter LE 8 >= GE større end eller lig karakter GE 8 IN tilhører karakter IN (6,7,8) & AND og karakter = 8 AND niveau = 'h' OR eller karakter = 8 OR niveau = 'o' NOT negation NOT(karakter IN (6,7,8)) Bemærk: Når man skriver funktionsudtryk er det bedre at sætte for mange end for få paranteser, hvis man vil undgå logiske fejl. 2.4 Sammenetning af datasæt Man har ofte brug for at slå datasæt sammen. Hvis to (eller ere) datasæt indeholder disjunkte observationssæt svarende til de samme variable, kan de slås sammen med ordren SET, der tidligere er blevet brugt til at kopiere et enkelt datasæt. SET lægger datasættene "i forlængelse af hinanden", således at det nye datasæt indeholder de oprindelige variable og alle observationerne. Eks Sammenetning af to datasæt ved SET. DATA nykar1;
12 2.4 Sammenetning af datasæt 9 SET karakter; IF karakter > 8 ; DATA nykar2; SET karakter; IF karakter > 8 THEN DELETE; DATA end; SET nykar1 nykar2; Datasættet nykar1 indeholder alle observationer med karakter > 8, mens nykar2 indeholder alle observationer med karakter 8. Datasættet set indeholder derfor alle observationerne fra karakter. Havde man i det første program skrevet IF karakter > 6, var de oprindelige observationer svarende til karakter=7 og karakter=8 fejlagtigt kommet med to gange som forskellige observationer. Hvis to (eller ere) datasæt indeholder de samme observationer men forskellige variable kan man bruge ordren MERGE, der lægger datasættene "ved siden af hinanden", således at det nye datasæt indeholder de oprindelige observationer og alle variablene. Eks Sammenetning af to datasæt ved MERGE. DATA nykar1; SET karakter; KEEP fag karakter; DATA nykar2; SET karakter; DROP fag karakter; DATA merge1; MERGE nykar1 nykar2; Datasættet nykar1 indeholder de to variable fag og karakter, mens nykar2 indeholder variablen niveau. Datasættet merge1 indeholder derfor de tre variable fra karakter. Havde man i et af de to datasæt byttet rundt på rækkefølgen af de observationerne, var forkerte værdier blevet parret sammen. For at undgå dette sørge man i almindelighed for, at datasættet indeholder en identikationsvariabel (kan f. eks. konstrueres med den før omtalte variabel _N_) og matcher på denne variabel, som vist nedenfor. Hvis to datasæt har en fælles variabel kan man matche på denne ved ordren BY variabelnavn, hvorved observationer med samme værdi af den matchende variabel bliver sat sammen. Dette kræver, at datasættene er
13 10 Indlæsning og tilrettelæggelse af DATA i SAS sorteret efter den matchende variabel og bør i almindelighed kun bruges, når den matchende variabel har en ny værdi for hver observation. En undtagelse er, hvis man har en værdi, som man ønsker at knytte til hver observation i en gruppe. Her kan man også bruge MERGE...BY, for optræder den matchende variabel et forskelligt antal gange i de to datasæt gentages sidste observation i det "korte"datasæt et antal gange indtil det hele går op, som vist eksempel MERGE er en nyttig, men farlig ordre. Man bør altid undersøge, om man nu har fået det datasæt, man egentlig ønskede. Eks Sammenetning af to datasæt ved MERGE og BY. DATA nykar1; SET karakter; id=_n_; KEEP id fag karakter; DATA nykar2; SET karakter; id=_n_; KEEP id niveau; PROC SORT DATA=nykar1; BY id; PROC SORT DATA=nykar2; BY id; DATA merge2; MERGE nykar1 nykar2; BY id; Eks Sammenetning af to datasæt med gentagelse af værdier. DATA nykar; SET karakter; DATA nykode; INPUT niveau $ kode; CARDS; h 1 m 2 o 3 ; PROC SORT DATA=nykar; BY niveau; PROC SORT DATA=nykode; BY niveau; DATA merge3; MERGE nykar nykode; BY niveau;
14 2.5 Konstruktion af nye variable 11 Det nye datasæt indeholder de re variable fag, niveau, karakter og kode, hvor kode antager værdier 1, 2 og 3, når niveau antager værdierne h, m og o. Denne konstruktion anvendes f. eks., når man ønsker at knytte et gruppegennemsnit til hver observation. Brug af SET og MERGE kan betragtes som det omvendte af udvælgelse af observationer hhv. udvælgelse af variable. 2.5 Konstruktion af nye variable I SAS skal nye variable ikke deklareres. De oprettes og navngives, når de deneres i programmet. Nye variable kan deneres ved omregning eller gruppering af eksisterende variable. Endvidere kan man konstruere variable ved DOordrer. Nye variable ved beregning Man kan danne nye variable ved hjælp af regneudtryk. Nedenfor følger en liste over de vigtigste operatorer og funktioner.
15 12 Indlæsning og tilrettelæggelse af DATA i SAS Operatorer: ** potensopløftning * multiplikation / division + addition - subtraktion Funktioner: EXP(argument) eksponentialfunktion LOG(argument) naturlig logaritme LOG2(argument) to-tals logaritme SIN(argument) sinus COS(argument) cosinus SQRT(argument) kvadratrod ABS(argument) numerisk værdi INT(argument) den hele del af ROUND(argument, afrundingsenhed) afrundet værdi DIF(argument) 1. dierens (x n x n 1 ) GAMMA(argument) γfunktionen POISSON(lambda, argument) Fordelingsfunktion for Poissonfordeling PROBBNML(p,n, argument) Fordelingsfunktion for Binomialfordeling PROBCHI(argument, frihedsgrader) Fordelingsfunktion for χ fordelingen 2 PROBT(argument, frihedsgrader) Fordelingsfunktion for Tfordelingen PROBNORM(argument) Fordelingsfunktion for Ufordelingen PROBIT(argument) Den inverse Ufordeling I SAS: Language Guide ndes en fuldstændig liste over operatorer og funktioner. Eks Konstruktion af nye variable ved beregning. DATA nykar; SET karakter; k=10*karakter; m=13-karakter; Det nye datasæt består af de gamle variable sammen med de to nye variable k og m. Se Udskrift
16 2.5 Konstruktion af nye variable 13 Nye variable ved gruppering IFsætninger kan bruges til at danne nye variable ud fra de oprindelige ved at slå værdier sammen. Eks Konstruktion af variable ved at slå værdier sammen. DATA nykar; SET karakter; IF karakter GE 6 THEN bestod = 'ja'; ELSE bestod = 'nej'; IF fag='mat' OR fag='kemi' THEN kode= 'nat'; ELSE IF fag = 'eng' THEN kode= 'sprog'; ELSE kode = 'andet'; SAS-datasættet karakter hentes ind, og der konstrueres to nye variable: bestod, der har værdien ja, når karakter er større end eller lig med 6, og nej ellers; og kode, der har værdien nat, når fag enten er mat eller kemi, værdien sprog, når fag er eng og andet ellers. Se udskrift Konstruktion af nye variable ved ordrerne DO og SUM Man kan konstruere variable ved ordrerne DO og SUM. Eks Konstruktion af SAS-variabel ved DO. DATA itera1; DO i=1 TO 6; OUTPUT; END; Ordren OUTPUT gør, at alle dataværdier bevares, så man får et datasæt med 6 observationer og en variabel i med værdierne 1,2,...,6. Eks Konstruktion af ere SAS-variable ved DO. DATA itera2; DO i=1 TO 6; DO j=2 TO 8 by 2; OUTPUT; END; END; Ordren OUTPUT giver et datasæt indeholdende 24 observationer, nemlig alle kombinationer af variablen i med værdierne 1,2,...,6 og variablen j med værdierne 2,4,6,8.
17 14 Indlæsning og tilrettelæggelse af DATA i SAS Med ordren SUM kan man konstruere fortsatte delsummer af de variable eller af funktioner af de variable f. eks. til brug ved tegning af fraktildiagrammer. Eks Konstruktion af SAS-variabel ved SUM. DATA sum; SET karakter; sumn+1; sumk+karakter; sumk2+karakter*2; sumksq+karakter*karakter; Datasættet sum indeholder de gamle variable sammen med re nye variable sumn, sumk, sumk2, sumksq. Her angiver sumn observationsnummer, sumk angiver de kumulerede værdier af variablen karakter, sumk2 angiver de kumulerede værdier af variablen karakter multipliceret med 2 og sumksq angiver de kumulerede værdier af variablen karakter. 2 Permanente SAS-datasæt Et permanent data sæt oprettes på samme måde som et midlertidigt datasæt. Den eneste forskel er, at et permanent datasæt skal have et todelt navn. I almindelighed ligger de permanente datasæt i biblioteker, der oprettes ved en såkaldt libname-kommando. På Stat 0 er der oprettet det permanente bibliotek stat0, der bruges i hjemmeopgaver og andre opgaver. Her ligger der datasæt, der hedder datanavn.ssd og som kan kopieres ind i egne programmer med ordren SET stat0.datanavn. Eks Oprettelse af permanent SAS-datasæt. DATA mylib.karakter; SET karakter; Her kopieres datasættet karakter over i karakter.ssd, der er et permanent datasæt og ligger i biblioteket mylib. Det kan nu kaldes i senere programmer med den sædvanlige SETordre. Eks Indlæsning af permanent SAS-datasæt. DATA nykar; SET mylib.karakter; Syntaks
18 2.6 Udskrifter 15 Dette afsnit indeholder nogle grundregler om syntaks i SAS. En del af bemærkningerne står andre steder i teksten, men gentages her. Syntaksen omtales udførligt i SAS Language Guide. Adskillelse af kommandoer i SAS sker med ';'. Linieskift betyder ingenting i SAS. Store og små bogstaver betyder ingenting i SAS. Variable skal ikke deklareres i SAS. De navngives samtidig med at de deneres. Navne på datasæt og variable må højst bestå af 8 tegn. Disse kan være bogstaver (A,...,Z), tal (0,...9) eller (_). Det første tegn skal være et bogstav. Værdier for tekstvariable skal i ' ', når man man bruger dem sammen med = og lignende operatorer. Parentes i SAS er /*...*/. Tekst mellem /* og */ læses ikke i programmer. Udskrifter i tekst og grak styres af OPTIONS...; hhv. GOPTIONS...;. Overskrifter speciceres med TITLE '...';. Tekstredigering Standardtekstredigering i SAS-programmer ligner tekstredigering f. eks. i Word. 2.6 Udskrifter Dette afsnit indeholder udskrifter fra SAS-programmerne. UDSKRIFT 2.2.1: OBS FAG NIVEAU KARAKTER 1 mat h 10 2 eng h 9 3 mat h 7 4 samf m 6 5 kem o 8 6 mat m 8 7 samf h 13 8 mus h 5
19 16 Indlæsning og tilrettelæggelse af DATA i SAS UDSKRIFT 2.3.1: OBS FAG KARAKTER 1 mat 10 2 eng 9 3 mat 7 4 samf 6 5 kem 8 6 mat 8 7 samf 13 8 mus 5 UDSKRIFT 2.3.3: OBS FAG NIVEAU KARAKTER 1 mat h 10 2 eng h 9 3 samf h 13 UDSKRIFT 2.3.4: OBS FAG NIVEAU KARAKTER 1 mat h 7 2 samf m 6 3 kem o 8 4 mat m 8 5 mus h 5 UDSKRIFT 2.3.4: OBS FAG NIVEAU KARAKTER 1 mat h 7 2 mat m 8
20 2.6 Udskrifter 17 UDSKRIFT 2.4.3: OBS FAG KARAKTER ID NIVEAU 1 mat 10 1 h 2 eng 9 2 h 3 mat 7 3 h 4 samf 6 4 m 5 kem 8 5 o 6 mat 8 6 m 7 samf 13 7 h 8 mus 5 8 h UDSKRIFT 2.4.4: OBS FAG NIVEAU KARAKTER KODE 1 mat h eng h mat h samf h mus h samf m mat m kem o 8 3 UDSKRIFT 2.5.1: OBS FAG NIVEAU KARAKTER K M 1 mat h eng h mat h samf m kem o
21 18 Indlæsning og tilrettelæggelse af DATA i SAS 6 mat m samf h mus h UDSKRIFT 2.5.2: OBS FAG NIVEAU KARAKTER BESTOD KODE 1 mat h 10 ja nat 2 eng h 9 ja spr 3 mat h 7 ja nat 4 samf m 6 ja and 5 kem o 8 ja and 6 mat m 8 ja nat 7 samf h 13 ja and 8 mus h 5 ne and UDSKRIFT 2.5.5: OBS FAG NIVEAU KARAKTER SUMN SUMK SUMK2 SUMKSQ 1 mat h eng h mat h samf m kem o mat m samf h mus h
22 Kapitel 3 SAS-procedurer 3.1 Indledning SAS indeholder en lang række af procedurer, der er inddelt i moduler efter deres anvendelsesområde. I dette kapitel gennemgås fundamentale procedurer til databehandling og datapræsentation. Det drejer sig om procedurer til beregning af gennemsnit, varians, standardafvigelse etc. og procedurer til tabellering af data, samt simple statistiske beregninger. Yderligere oplysninger fås i SAS Procedures Guide og SAS/STAT User's Guide. Det følgende afsnit omhandler PROCEDURE-trinnet. Det antages, at DATA-trinnet er afsluttet, således at data ligger i et SAS-datasæt med de relevante variable. Et SAS-program ser da sådan ud; PROC procnavn DATA=datanavn; (ordrer vedr. udførelsen) RUN; Her gælder følgende: Datanavnet angiver hvilket SAS-datasæt proceduren skal arbejde på. Udelades DATA=datanavn benytter proceduren det sidst oprettede SAS-datasæt. Det er en god vane, altid at specicere sit datasæt. Derved sparer man sig selv for mange overraskelser. RUN afslutter altid alle SAS-programmer. Ordrer: Der vil for hver af de efterfølgende procedurer blive angivet en
23 20 SAS-procedurer række lovlige ordrer. Her skal blot angives to, der kan benyttes for næsten alle procedurer, nemlig VAR variabelnavn og BY variabelnavn. VAR: Skriver man i sit program PROC procnavn DATA=datanavn; VAR variabelnavn; udføres den valgte procedure kun på variablen variabelnavn. Hvis VAR ikke angives, udføres proceduren på alle de variable i SAS-datasættet. BY: Skriver man i sit program PROC procnavn DATA=datanavn; BY variabelnavn; opdeles datasættet i deldatasæt svarende til de forskellige værdier af variabelnavn og proceduren udføres på hvert deldatasæt for sig. Bemærk, at SAS-datasættet skal være sorteret efter variablen variabelnavn før proceduren udføres. PROC SORT benyttes til denne sortering. 3.2 PROC PRINT Det er til tider nyttigt, at få udskrevet observationerne i et SAS-datasæt. Hertil benytter man PROC PRINT. Eks Udskrift af datasæt ved brug af PROC PRINT. PROC PRINT DATA=karakter; Alle datasæt i afsnittet Udskrifter i kapitel 2 er udskrevet med PROC PRINT. Nedenfor er vist eksempler på PROC PRINT kombineret med VAR og med BY. Variabelrækkefælgen i VAR bestemmer i hvilken rækkefølge de variable bliver udskrevet. Vil man ikke have observationsummer med i sin udskrift skriver man PROC PRINT NOOBS. Eks Udskrift af datasæt. Variabeludvælgelse ved VAR. PROC PRINT DATA=karakter; VAR fag karakter; Eks Udskrift af datasæt. Opdeling i grupper ved BY. PROC SORT DATA=karakter; BY niveau; PROC PRINT DATA=karakter; BY niveau;
24 3.3 PROC CONTENTS 21 Man skal i almindelighed ikke bruge PROC PRINT på store datasæt. 3.3 PROC CONTENTS Ovenfor blev det vist, hvordan man kunne få udskrevet observationerne i et SAS-datasæt ved hjælp af PROC PRINT. Skal man bare have oplysninger om antallet af observationer og navnene på de variable kan man bruge PROC CONTENTS. Eks Summariske oplysninger om SAS-datasæt ved PROC CONTENTS. PROC CONTENTS DATA=karakter; Dette giver Udskrift PROC SORT Denne procedure kan sortere et SAS-datasæt efter en eller ere variable. Eks Sortering af SAS-datasæt ved PROC SORT. PROC SORT DATA=karakter; BY niveau; Datasættet karakter er efter dette program sorteret således, at alle observationer med samme værdi af variablen niveau er samlet. Eks Sortering af SAS-datasæt efter to variable ved PROC SORT. PROC SORT DATA=karakter; BY niveau karakter; Nu er datasættet karakter først sorteret efter voksende værdier af niveau, og for hver værdi af niveau er observationerne så sorteret efter voksende værdier af karakter. Ønsker man data sorteret efter aftagende værdier af en sorteringsvariabel, skrives DESCENDING før den pågældende variabel. Eks Sortering af SAS-datasæt efter aftagende værdier af variabel. PROC SORT DATA=karakter; BY niveau DESCENDING karakter; Her er datasættet karakter først sorteret efter voksende værdier af variablen niveau, og for hver værdi af niveau er observationerne sorteret efter aftagende værdier af variablen karakter.
25 22 SAS-procedurer 3.5 PROC MEANS I store datamaterialer er det normalt vanskeligt at overskue alle observationerne. PROC MEANS kan være til hjælp i sådanne situationer. Samtidig er det den procedure man bruger, når man f. eks. ønsker at beregne summer, gennemsnit eller standardafvigelse for et observationssæt. Eks Beregning af gennemsnit, standardafvigelse etc. ved PROC MEANS. PROC MEANS DATA=karakter; VAR karakter; Dette giver Udskrift PROC MEANS beregner nedenstående størrelser ud fra værdierne for de enkelte observationer af SAS-variablen karakter. Man kan selv styre hvilke størrelser man ønsker udskrevet ved at skrive de pågældende efter PROC MEANS i programmet. Skriver man ingenting får man udskrevet N MIN MAX MEAN STD, som i eksempel Denitioner og udskriftstørrelser i PROC MEANS. Det antages, at vi har N ikke-manglende observationer, og vi benytter følgende denitioner x (1) den mindste observation x (N) = den største observation x = 1 Ni=1 x N i. s 2 = 1 Ni=1 (x N 1 i x). 2 Med disse denitioner fås følgende udskriftstørrelser i PROC MEANS: N = antal observationer med ikke-manglende værdier. NMISS = antal observationer med manglende værdier. MEAN = x = gennemsnit eller empirisk middelværdi. STD = s = empirisk spredning eller empirisk standardafvigelse. MIN = x (1). MAX = x (N). RANGE = x (N) x (1) = variationsbredde. SUM = N i=1 x i.
26 3.5 PROC MEANS 23 VAR =s = empirisk varians. 2 USS N i=1 x 2 i CSS = N i=1 (x i x) = kvadratafvigelsessum. 2 CV = 100s/ x = variationskoecient. STDERR = s/ N = empirisk spredning for gennemsnittet. T = N x/s = T-teststørrelse for hypotesen E(X) = 0, hvis observationerne er normalfordelte. PRT = testsandsynlighed for T-testet. Eks Beregning af antal, gennemsnit og sum ved PROC MEANS. PROC MEANS DATA=karakter N MEAN SUM; VAR karakter; Vil man selv kontrollere antal decimaler i udskriften tilføjes MAXDEC=n i programmet sammen med PROC MEANS. Ønsker man f. eks. 2 decimaler skriver man følgende programstump PROC MEANS DATA=karakter N MEAN SUM MAXDEC=2; PROC MEANS kan kombineres med BY som i følgende program, hvor antal sum og gennemsnit udregnes for hver værdi af variablen niveau. Eks Beregning for ere grupper ved PROC MEANS og BY. PROC SORT DATA=karakter; BY niveau; PROC MEANS DATA=karakter N MEAN SUM; VAR karakter; BY niveau; Dette giver Udskrift Det er muligt at få lavet et nyt SAS-datasæt med de beregnede størrelser. Eks Oprettelse af datasæt med beregningsværdier fra PROC MEANS. PROC SORT DATA=karakter; BY niveau; PROC MEANS DATA=karakter NOPRINT; VAR karakter; BY niveau; OUTPUT OUT=sum N=n SUM=total; PROC PRINT DATA=sum; Det nye datasæt sum indeholder bl. a. de tre variable niveau, n, total, hvor n er antallet af observationer med den givne værdi af niveau, og
27 24 SAS-procedurer total er summen af karaktererne for den givne værdi af niveau. PROC PRINT sørger for udskrift. Datasættet er vist i Udskrift På tilsvarende vis kan man få datasæt, der indeholder andre af de udskriftsstørrelser, der er nævnt tidligere. NOPRINT i linien med PROC MEANS medfører at resultaterne af PROC MEANS ikke bliver udskrevet. Bemærk, at man kun kan bruge PROC MEANS på numeriske variable. Det følgende eksempel viser, hvorledes man bruger PROC MEANS til at beregne gennemsnit etc. for grupperede data. Datasættet er målinger af højden på indkaldte til forårssessionen Observationerne er grupperet i intervaller af længden 5. I datasættet session er hojde intervalmidtpunktet og antal angiver, hvor mange observationer, der falder i intervallet. Beregning af gennemsnit, empirisk varians, etc. kan her udføres ved at bruge ordren FREQ antal sammen med PROC MEANS, som vist nedenfor. Eks Brug af PROC MEANS til beregning af gennemsnit etc. for grupperede data. DATA session; INPUT hojde antal; CARDS; ; PROC MEANS DATA=session; VAR hojde; FREQ antal; I beregningerne indgår hver observation nu et antal gange svarende til værdien af variablen antal. Se Udskrift PROC FREQ Ønsker man at tabellere sit SAS-datasæt kan man bruge PROC FREQ, der kan lave en- eller ersidede tabeller.
28 3.6 PROC FREQ 25 Eks Ensidet tabel (en variabel) ved PROC FREQ. PROC FREQ DATA=karakter; TABLES karakter; Resultatet er vist i Udskrift Skal man tabellere mere end en variabel kan man skrives f. eks. TABLES karakter niveau. Herved får man tabelleret karakter og niveau hver for sig. Udelader man TABLESordren tabelleres alle de variable. Eks Tosidet tabel (to variable) ved PROC FREQ. PROC FREQ DATA=karakter; TABLES niveau*fag; Dette giver Udskrift Man ser, at tabellerne i hver celle indeholder antal, procenter, række- og søjleprocenter. Hvis der er nogle af disse oplysninger man ikke ønsker kan man angive dette i linien med kommandoen TABLES, som vist i eksempel 3.6.3, hvor alle tre procentangivelser er udeladt. Her og i nogle af de følgende eksempler er anvendt SAS-datasættet klinik.data baseret på tallene i Bilag 1, hvor der er givet 100 sammenhørende observationer af alder, køn, systolisk blodtryk og diagnose. Disse vil i det følgende blive opfattet som re SAS-variable alder, sex, tryk og diag liggende i klinik.data. Eks Tosidet tabel (to variable) uden procentangivelser. PROC FREQ DATA=klinik.data; TABLES sex*diag/ NOPERCENT NOROW NOCOL ; Det er muligt at få udregnet teststørrelser for uafhængighedstest i tabeller med to variable, som vist i eksempel Kommandoen EXPECTED bevirker, at den forventede værdi under hypotesen om uafhængighed, altså xr.x.s x.., skrives sammen med den observerede værdi i tabellen. CELLCHI2 bevirker, at størrelsen (x rs xr.x.s x.. ) 2 / xr.x.s x.. skrives i tabellen, mens CHISQ giver teststørrelser og testsandsynligheder. I udskriften er DF antal frihedsgrader, Value er værdien af teststørrelsen og Prob angiver testsandsynligheden. Chi-Square er Pearsonteststørrelsen og Likelihood Ratio Chi-Square er 2 log Q. Resultatet er vist i Udskrift De sidste linier i tabellen er værdier for andre teststørrel-
29 26 SAS-procedurer ser og Warning: viser at celleantallene ikke er store nok til at bruge de asymptotiske test.
30 3.6 PROC FREQ 27 Eks Uafhængighedstest i tosidet tabel ved PROC FREQ. PROC FREQ DATA=klinik.data; TABLES sex*diag/ EXPECTED CELLCHI2 CHISQ NOPERCENT NOROW NOCOL; Det er muligt at indlæse resultaterne af en kørsel med PROC FREQ i et nyt datasæt, som vist i følgende eksempel. Eks Konstruktion af datasæt med PROC FREQ. PROC FREQ DATA=klinik.data; TABLES diag/ OUT=tabel NOPRINT; PROC PRINT DATA=tabel; Der er nu oprettet et nyt datasæt med navnet tabel. Det indeholder variablene diag, count og percent. Observationerne i datasættet angiver værdier for diag, antal gange den pågældende værdi forekommer (count) og den relative hyppighed af den pågældende værdi (percent). Datasættet er vist i Udskrift Ordren NOPRINT medfører, at selve tabellen ikke udskrives. Sammen med PROC FREQ kan man bruge ordren WEIGHT variabelnavn; Alle observationer vil da indgå i tabellen med en vægt svarende til værdien af den pågældende variabel. Dette bruges for eksempel, når data er givet i tabelform. Eks PROC FREQ med vægtvariabel WEIGHT. PROC FREQ DATA=session; TABLES hojde; WEIGHT antal; I udskrifterne fra PROC FREQ ordnes tabellens rækker og søjler efter voksende variabelværdier. Ønsker man at beholde den oprindelige rækkefølge skrives ORDER=DATA i linien med PROC FREQ, som vist det følgende eksempel. Eks Tabel med PROC FREQ og ORDER=DATA.
31 28 SAS-procedurer PROC FREQ DATA=karakter ORDER=DATA; TABLES karakter; Hvis en variabel har mange værdier kan det være nødvendigt at gruppere den, før man bruger FREQ. Dette kan f. eks. gøres med ROUND eller med IF...THEN som i det næste eksempel.
32 3.7 PROC UNIVARIATE 29 Eks Gruppering før anvendelse af PROC FREQ. DATA temp; SET klinik.data; nyalder=20*round(alder/20); IF diag=1 OR diag=2 THEN nydiag='let'; ELSE nydiag='alvorlig'; PROC FREQ DATA=temp; TABLES nydiag*nyalder/nopercent NOROW NOCOL ; Her er variablen alder slået sammen i grupper af længde 20 og niveau 1 og 2 hhv 3 og 4 er slået sammen i variablen diag. Ønsker man at tabellere to variable for hver værdi af en tredie variabel kan man enten sortere og bruge BY eller skrive følgende program Eks Tabellering af tre variable. DATA temp; SET klinik.data; nyalder=20*round(alder/20); IF diag=1 OR diag=2 THEN nydiag='let'; ELSE nydiag='alvorlig'; PROC FREQ DATA=temp; TABLES sex*nydiag*nyalder/nopercent NOROW NOCOL; Her får man en krydstabellering af nydiag*nyalder for hver værdi af sex. Se udskrift Tilføjes CHISQ fås uafhængighedstest i hver af tabellerne. 3.7 PROC UNIVARIATE Median og fraktiler for et datasæt kan ikke ndes med PROC MEANS. Her kan man i stedet bruge PROC UNIVARIATE. Denne procedure beregner de samme størrelser som PROC MEANS samt 1%, 5%, 10%, 25%, 50%, 75%, 90%, 95%, 99%-fraktil (og en hel del ekstra). Betegnelserne er de samme som i PROC MEANS, mens de nævnte fraktiler hedder P1, P5, P10,
33 30 SAS-procedurer Q1, MED, Q3, P90, P95, P99. I eksempel er PROC UNIVARIATE anvendt på datasættet klinik.data i bilag 1.
34 3.8 PROC CORR 31 Eks Beregning af fraktiler med PROC UNIVARIATE. PROC UNIVARIATE DATA=klinik.data; VAR tryk; For kun at få udskrevet de størrelser man har brug for, anvendes PROC UNIVARIATE oftest med et OUTPUT statement som vist nedenfor. Eks Konstruktion af datasæt med PROC UNIVARIATE. PROC UNIVARIATE DATA=klinik.data NOPRINT; VAR tryk; OUTPUT OUT=d MEAN=mean MEDIAN=median STD=std Q1=q1 Q3=q3 QRANGE=qrange; PROC PRINT DATA=d; Det nye datasæt hedder d og indeholder de variable mean (gennemsnit), median (empirisk median), std (empirisk standardafvigelse), q1 (empirisk 25%-fraktil), q3 (empirisk 75%-fraktil) og qrange (dierensen mellem 75%-fraktilen og 25%-fraktilen). Man kan selvfølgelig også vælge andre af de størrelser, som PROC UNIVARIATE beregner. OUTPUT anvendes specielt sammen med BY, hvorved man får et datasæt med ovennævnte variabelværdier for hver værdi af BYvariablen. 3.8 PROC CORR For at nde den empiriske korrelationskoecient kan man bruge proceduren PROC CORR. Den beregner størrelserne N MEAN STD SUM MIN og MAX, der er deneret i PROC MEANS, samt empirisk korrelationskoecient for alle par af variable medtaget i VARordren. Samtidig angives testsandsynlighed for test af hypotesen ρ = 0 under antagelse af normalfordeling, hvor ρ er korrelationskoecienten for variabelparret. I udskriften fra eksempel 3.8.1, hvor PROC CORR er anvendt på klinik.data, er de to størrelser betegnet med henholdsvis (1*) og (2*). Sammen med PROC CORR bruger man ofte PROC GPLOT til at tegne de variable mod hinanden (se afsnit 4.3). Eks Beregning med PROC CORR. PROC CORR DATA=klinik.data; VAR tryk alder;
35 32 SAS-procedurer 3.9 SAS-programmer Et SAS-program består DATA-trin og PROC-trin. Man skal afslutte et DATA-trin, før man går i gang med det tilsvarende PROC-trin. Man må altså ikke begynde at lave om på data midt i en procedure. Når proceduren så er afsluttet, kan man godt påbegynde et nyt DATA-trin i det samme program. For at holde orden i et program, kan det være nyttigt at skrive kommentarer i selve programmet. Hvis man indeslutter dem i /* */ læser SAS ikke kommentarerne. Et SAS-program vil således typisk se ud som i det følgende eksempel. Eks SAS-program med ere DATA-trin og PROC-trin. DATA nykar; /* Udvælgelse af */ SET karakter; /* observationer */ IF karakter > 8 THEN DELETE; PROC FREQ DATA=nykar; /* Tabellering */ TABLES niveau*karakter; RUN; DATA nykar; SET karakter; k=10*karakter+6; PROC MEANS DATA=nykar; /* Beregning af */ VAR k; /* gennemsnit */ OUTPUT OUT=d MEAN=gns; RUN; DATA dny; SET d; PROC FREQ DATA=dny; /* Tabellering */ TABLES gns; RUN; 3.10 Udskrifter UDSKRIFT 3.3.1: CONTENTS PROCEDURE Data Set Name: WORK.KARAKTER Type: Observations: 8 Record Len: 28 Variables: Alphabetic List of Variables and Attributes-----
36 3.10 Udskrifter 33 # Variable Type Len Pos Label 1 FAG Char KARAKTER Num NIVEAU Char 8 12 UDSKRIFT 3.5.1: Analysis Variable : KARAKTER N Obs N Minimum Maximum Mean Std Dev UDSKRIFT 3.5.3: Analysis Variable : KARAKTER UDSKRIFT 3.5.4: NIVEAU=h N Obs N Sum Mean NIVEAU=m N Obs N Sum Mean NIVEAU=o N Obs N Sum Mean
37 34 SAS-procedurer Analysis Variable : KARAKTER OBS NIVEAU _TYPE FREQ_ N TOTAL 1 h m o UDSKRIFT 3.5.5: Analysis Variable : HOJDE N Obs N Minimum Maximum Mean Std Dev UDSKRIFT 3.6.1: Cumulative Cumulative KARAKTER Frequency Percent Frequency Percent UDSKRIFT 3.6.2:
38 3.10 Udskrifter 35 TABLE OF NIVEAU BY FAG NIVEAU FAG Frequency Percent Row Pct Col Pct eng kem mat mus samf Total h m o Total UDSKRIFT 3.6.3: TABLE OF SEX BY DIAG SEX DIAG Frequency Total kvinde
39 36 SAS-procedurer mand Total UDSKRIFT (redigeret): TABLE OF SEX BY DIAG SEX DIAG Frequency Expected Cell Chi-Square Total kvinde mand Total STATISTICS FOR TABLE OF SEX BY DIAG Statistic DF Value Prob Chi-Square Likelihood Ratio Chi-Square Sample Size = 100 WARNING: 25% of the cells have expected counts less than 5. Chi-Square may not be a valid test. UDSKRIFT 3.6.5:
40 3.10 Udskrifter 37 UDSKRIFT 3.6.6: OBS DIAG COUNT PERCENT Cumulative Cumulative HOJDE Frequency Percent Frequency Percent UDSKRIFT 3.6.7: Cumulative Cumulative KARAKTER Frequency Percent Frequency Percent
41 38 SAS-procedurer UDSKRIFT 3.7.1: Variable=T UNIVARIATE PROCEDURE Moments N 100 Sum Wgts 100 Mean Sum Std Dev Variance Skewness Kurtosis USS CSS CV Std Mean T:Mean= Prob> T Sgn Rank 2525 Prob> S Num ^= Quantiles(Def=5) 100% Max % % Q % % Med % % Q % 100 0% Min 85 5% 94 1% 87.5 Range 87 Q3-Q1 20 Mode 120 Extremes Lowest Obs Highest Obs
42 3.10 Udskrifter 39 85( 52) 160( 64) 90( 27) 160( 78) 90( 24) 170( 20) 92( 65) 170( 44) 92( 28) 172( 90) UDSKRIFT 3.7.2: OBS MEAN STD Q1 MEDIAN Q3 QRANGE UDSKRIFT 3.8.1: CORRELATION ANALYSIS 2 'VAR' Variables: T ALDER Simple Statistics Variable N Mean Std Dev Sum Minimum Maximum T ALDER Pearson Correlation Coefficients / Prob > R under Ho: Rho=0 / N = 100 T ALDER T (1*) (2*)
43 40 SAS-procedurer ALDER
44 Kapitel 4 Grak i SAS 4.1 Indledning SAS har et specielt grakmodul SAS-GRAPH. Procedurerne i dette er forsynet med forskellige muligheder for at styre udskrifterne, således at man kan 'skræddersy' sine tegninger. Dette kapitel indeholder de almindeligste udskriftsdirigerende sætninger i de to graske procedurer PROC GCHART og PROC GPLOT. Yderligere oplysninger ndes i SAS/GRAPH User's Guide. Gennemgangen er baseret på eksempler. Data til eksemplerne ndes i datasættet 'klinik.data', hvor der er givet 100 sammenhørende observationer af alder, køn, systolisk blodtryk og diagnose. Disse vil i det følgende blive opfattet som re SAS-variable alder, sex, tryk og diag liggende i et SAS-datasæt klinik.data. Overskrifter og valg af skrifttyper gennemgås i afsnit 4.4. Diagrammer og plot ndes i særskilte bilag. 4.2 PROC GCHART Søjlediagrammer kan benyttes til at give indtryk af datamaterialers fordelinger. PROC GCHART kan bl. a. konstruere søjlediagrammer med vandrette eller lodrette søjler. Eks Søjlediagram for SEX med lodrette (vertikale) søjler. PROC GCHART DATA=klinik.data;
45 42 Grak i SAS VBAR sex/frame; For hver værdi af SEX tegner programmet en søjle. Højden på søjlen angiver, hvor mange gange den pågældende værdi forekommer i datamaterialet. Ordren FRAME medfører, at tegningen bliver indrammet. Eks Søjlediagram for DIAG med vandrette (horisontale) søjler. PROC GCHART DATA=klinik.data; HBAR diag/frame DISCRETE; Ordren HBAR giver vandrette(horisontale) søjler. Ordren DISCRETE i dette program fortæller SAS, at variablen DIAG skal opfattes som en diskret variabel, som man ikke ønsker, at programmet skal begynde at gruppere, selv om den evt. har numeriske værdier. Udelades DISCRETE risikerer man, at SAS slår grupper sammen. DISCRETE kan også bruges med VBAR. I SAS/GRAPH User's Guide er der yderligere oplysninger om den graske tilrettelæggelse. Hvis man skal sammenligne forskellige gruppers fordeling, er det en fordel, at lade højden på søjlerne angive gruppens procentandel i stedet for antallet. Dette gøres med ordren TYPE=PERCENT. Man kan endvidere selv bestemme, hvordan akserne skal være med de to ordrer RAXIS og MIDPOINTS. På den måde kan man f. eks. sikre, at ere diagrammer får samme skala. Ordren BY kan bruges i de este grakprogrammer. Derved får man en tegning for hver værdier af BYvariablen. Der skal som sædvanligt sorteres før man bruger BY. Eks Søjlediagram for ALDER opdelt efter SEX med specicerede akser. PROC SORT DATA=klinik.data; BY sex; PROC GCHART; VBAR alder/frame TYPE=PERCENT SPACE=0 RAXIS=0 TO 55 BY 5 MIDPOINTS=15 TO 75 BY 10; BY sex; Ovenstående program resulterer i et søjlediagram af variablen ALDER for
46 4.2 PROC GCHART 43 hver værdi af variablen SEX. y-aksen's maksimum bliver 55 (RAXIS = responsaxis) og intervalinddelingen på x-aksen bliver fra 10 til 80 i skridt af længde 10(givet ved MIDPOINTS, der også kan have formen MIDPOINTS= ). Bemærk, at selv om intervallerne ikke er lige lange, så angiver højden stadig den procentvise andel der falder i intervallet. Når man selv specicerer sine akser, skal man i øvrigt passe på, at man får plads til alle dele af tegningen. SAS smider det væk, der ligger uden for de specicerede akser. Sker det, angives det i log-len, som man bl. a. af den grund altid bør læse. I udskriften har vi sat afstanden mellem søjlerne til 0 ved ordren SPACE. Dette bruges f. eks. når man skal tegne histogrammer. PROC GCHART kan også tegne kumulerede fordelinger, således at søjlernes højde angiver det totale antal observationer der er mindre end eller lig med værdien. Dette gøres ved at specicere TYPE=SUM, der giver kumulerede antal, eller TYPE=CPERCENT, der giver kumulerede procenter. Eks Kumuleret fordeling for ALDER. PROC GCHART DATA=klinik.data; VBAR alder/frame TYPE=CPERCENT SPACE=0 MIDPOINTS=15 TO 75 BY 10; Endvidere kan PROC GCHART lave lagkagediagrammer ved ordren PIE Eks Lagkagediagram for DIAG. PROC GCHART DATA=klinik.data; PIE diag/discrete TYPE=PERCENT; Man kan man få afbildet to eller ere grupper i samme diagram ved ordren GROUP, der sørger for at der bliver lavet et søjlediagram for hver værdi af den variabel, der speciceres ved GROUP. Eks Søjlediagram for DIAG med GROUP=SEX. PROC GCHART DATA=klinik.data; VBAR diag/frame DISCRETE TYPE=PERCENT G100 GROUP=sex PATTERNID=group;
47 44 Grak i SAS Skriver man som her TYPE=PERCENT og G100 vil summen af søjlerne være 100% for hver værdi af GROUPvariablen. Udelades G100 bliver summen af alle søjlerne 100%. Udelades også TYPE=PERCENT vil hver søjle indeholde antallet af observationer i den pågældende gruppe. PATTERNID=group medfører, at de to diagrammer får hver sit mønster. Bruger man i stedet ordren bliver hver søjle opdelt efter den variabel der speciceres ved SUBGROUP. Eks Søjlediagram for DIAG med SUBGROUP=SEX. PROC GCHART DATA=klinik.data; VBAR diag/frame DISCRETE TYPE=PERCENT SUBGROUP=sex; Endelig kan man kombinere GROUP og SUBGROUP. Eks Søjlediagram for ALDER med GROUP=SEX og SUBGROUP=DIAG. PROC GCHART DATA=klinik.data; VBAR alder/frame TYPE=PERCENT RAXIS=0 TO 55 BY 5 MIDPOINTS=15 TO 75 BY 10 GROUP=sex SUBGROUP=diag G100; 4.3 PROC GPLOT Ønsker man at afsætte to variable mod hinanden i et koordinatsystem, kan man benytte proceduren PROC GPLOT. Dette er en eksibel procedure, der indeholder mange gode og nyttige udskriftsdirigerende ordrer, hvoraf nogle få gennemgås i det følgende. PROC GPLOT består essentielt af to dele: plotordrer og symbolordrer. En PLOTordre har formen PROC GPLOT; PLOT y*x;
48 4.3 PROC GPLOT 45 og fortæller, hvilke variable, der skal tegnes op mod hinanden (y-variablen skal stå først). Eks Tegning af tryk mod alder med PROC GPLOT. PROC GPLOT DATA=klinik.data; PLOT tryk*alder/frame; Vil man have forskellige symboler for punkter, der svarer til f. eks. mænd og kvinder, angiver man den tilsvarende variabel som plottesymbol. Eks Tegning af tryk mod alder med sex som plottesymbol. PROC GPLOT DATA=klinik.data; PLOT tryk*alder=sex/frame; Man kan selv skalere akserne ved at bruge ordrerne HAXIS (for den vandrette akse) og VAXIS (for den lodrette akse). Dette er især nyttigt, hvis man vil sammenligne ere plot, fordi man da kan få samme skala på tegningerne. Eks Skalering af akser ved HAXIS og VAXIS. PROC SORT DATA=klinik.data; BY sex; PROC GPLOT; PLOT tryk*alder/frame HAXIS=20 TO 80 BY 10 VAXIS=80 TO 180 BY 10; BY SEX; Skalerer man selv akserne, skal man sørge for at få alle observationer med. SAS smider også her de observationer væk, der ligger uden for det angivne område (dog med advarsel i log-len). Man kan få mere avancerede plot ved brug af SYMBOLordrer, der fortæller, hvad der skal ske med punkterne og ind imellem punkterne. Disse ordrer indeholder beskrivelse af farver, plottesymboler liniesignaturer og interpolationsmåder, der angives med C (= colour), V (= value), L (= line) og I (= interpolation). Skriver man ingenting vælger maskinen selv. Betydningen af farve og plottesymbol giver sig selv. Interpolationsmåde angiver om punkterne skal være isolerede; om de skal forbindes med rette linier eller med udjævnede kurver; om der skal tilpasses rette linier eller
49 46 Grak i SAS polynomier til punkterne; om der skal tegnes lodrette linier fra punkterne ned til x-aksen. Liniesignaturer angiver stiplede linier af forskellige typer. Der kan gives op til 255 SYMBOLordrer. En symbolordre ser således ud: SYMBOLn C=BLUE V=PLUS L=1 I=JOIN; Værdier for n: Tallene fra 1 til 255. Værdier for C: Almindelige farvenavne på engelsk. Hvilke der kan bruges afhænger af kongurationen. Maskinen ændrer selv, hvis man bruger nogle ulovlige. Værdier for V: PLUS, X, STAR, DIAMOND, DOT, NONE, etc. Bruger man NONE bliver selve punkterne ikke tegnet. Værdier for L: Tallene fra 1 til 46. Værdier for I: I=NONE punkterne forbindes ikke I=JOIN punkterne forbindes med rette linier I=SPLINE tegner 'glat' kurve gennem punkterne I=NEEDLE tegner lodret linie ned til x-aksen I=RL tilpasser bedste rette linie (regressionslinie) I=RQ tilpasser bedste andengradspolynomium I=STEPL tegner trappefunktion, punktet er til venstre for stregen I=STEPR tegner trappefunktion, punktet er til højre for stregen I=STEPC tegner trappefunktion, punktet er midt på stregen. Tilføjes J som f.eks. i I=STEPRJ forbindes stregerne med lodrette linier. Har man gentagne observationer kan I beregne og indtegne gennemsnit og empirisk standardafvigelse. Dette gøres ved ordren I=STDPMT, der for hver værdi af x afsætter gennemsnittet og herudfra 2 gange gennemsnittets standardafvigelse beregnet ud fra alle observationer. Flere plot kan tegnes oveni hinanden. Dette gøres med ordren /OVERLAY. Tallet efter lighedstegnet i PLOTlinien angiver hvilket SYMBOL, der bruges
50 4.3 PROC GPLOT 47 i det pågældende plot. Endelig kan man vælge skrifttype og skriftstørrelse på akserne og i overskrifter og gurtekster som vist i afsnit 4.4. Eks Indtegning af punkter og regressionslinie ved PROC GPLOT. Ny tegning i samme skala for hver værdi af SEX. PROC SORT DATA=klinik.data; BY sex; SYMBOL1 V=DOT I=RL; PROC GPLOT; PLOT tryk*alder=1/frame HAXIS=20 TO 80 BY 10 VAXIS=50 TO 200 BY 50; BY sex; Man kan indtegne ere kurver på samme plot: Eks Indtegning af punkter, regressionslinie og andengradspolynomium ved PROC GPLOT. DATA t; SET klinik.data; IF sex='kvinde'; SYMBOL1 V=DOT I=RL C=BLUE; SYMBOL2 V=NONE I=RQ C=GREEN; PROC GPLOT; PLOT tryk*alder=1 tryk*alder=2/frame OVERLAY; Her kunne man også have indtegnet forskellige variable fra samme datasæt på et plot. Selv om man ikke har farveskærm skal man for en sikkerheds skyld bruge en ny farve i hvert symbol, idet SAS fra tid til anden ikke vil skifte interpolationmåde, hvis man ikke skifter farve. Selv farveskift er imidlertid ikke altid nok. Hvis systemet gentagne gange bruger en forkert interpolation trods et korrekt program, er der ikke andet at gøre end at gå ud af SAS og begynde forfra. Man kan lægge ere regressionslinier ind i et plot, hvor observationerne er delt op i grupper efter værdierne af en tredie variabel. Sætter man V=NONE bliver punkterne ikke indtegnet. Har man ikke farver kan man
51 48 Grak i SAS give linierne forskellig signatur ved L=n. Eks Indtegning af regressionslinier for hhv mænd og kvinder ved PROC GPLOT. SYMBOL1 V=NONE I=RL C=RED L=1; SYMBOL2 V=NONE I=RL C=BLUE L=2; PROC GPLOT DATA=klinik.data; PLOT tryk*alder=sex/frame; Har man en x-variabel med gentagelser kan man indtegne regressionslinie, gennemsnit og standardafvigelse på samme plot. Eks Indtegning af regressionslinie, gennemsnit og 2 gange standardafvigelse for variabel med gentagelser. DATA t; SET klinik.data; alder=round(alder/5)*5; SYMBOL1 V=NONE I=RL C=RED; SYMBOL2 V=NONE I=STDPMT C=BLUE; PROC SORT; BY sex; PROC GPLOT; PLOT tryk*alder=1 tryk*alder=2/frame HAXIS=20 TO 80 BY 10 VAXIS=50 TO 200 BY 50 OVERLAY; BY sex; Hvis man selv denerer akser, skal man være opmærksom på, at regressionslinien kun estimeres på grundlag af de punkter, der ligger i det afgrænsede område, så man skal altså have det hele med. Man kan også bruge PROC GPLOT, hvis man skal tegne en trappefunktion. Dette kan være nyttigt, hvis man vil have tegnet en tæthedsfunktion sammen med et histogram. Skal man bruge PROC GPLOT til at tegne et histogram, skal variablen være grupperet. Eks Trappefunktion tegnet med PROC GPLOT. DATA t; SET klinik.data; IF sex='mand';
52 4.3 PROC GPLOT 49 tryk=round(tryk/10)*10; PROC FREQ; TABLES tryk/noprint OUT=freqdata; SYMBOL1 V=NONE I=STEPCJ; PROC GPLOT ; PLOT percent*tryk=1/frame ; I dette program er data grupperet med ordren ROUND, der afrunder til hele tal. Trappefunktionen er tegnet med ordren I=STEPCJ, der placerer punktet i midten af intervallet og forbinder trinene med lodrette streger. Vil man have delestregerne helt ned til x-aksen og også have lodrette streger yderst på tegningen, må man gøre sig lidt mere umage. I det følgende program er der deneret to nye variable, l og h, der tager værdier i intervalendepunkterne. Ordren I=NEEDLE tegner så de ønskede lodrette streger. Samtidig er variablen percent divideret med intervallængden 10, således at arealet under kurven er 1. Derved får man tegnet et histogram. Denne standardisering af arealet under kurver er specielt nyttig, når man skal sammenligne ere histogrammer eller hvis man skal tegne tætheder ind sammen med histogrammet. Eks Histogram tegnet med PROC GPLOT. DATA t; SET klinik.data; IF sex='mand'; tryk=round(tryk/10)*10; PROC FREQ; TABLES tryk/noprint OUT=freqdata; DATA t2; SET freqdata; nypct=percent/10; l=tryk-5; h=tryk+5; SYMBOL1 V=NONE I=STEPC C=BLUE; SYMBOL2 V=NONE I=NEEDLE C=GREEN; PROC GPLOT DATA=t2; PLOT nypct*tryk=1 nypct*h =2 nypct*l =2/FRAME OVERLAY;
53 50 Grak i SAS Man kan også bruge PROC GPLOT til at tegne kontinuerte funktioner. Dette gøres ved at frembringe en masse værdier på x-aksen i det relevante interval, beregne funktionensværdien i hvert punkt, plotte dem og så tegne en glat kurve gennem dem ved hjælp af I=SPLINE. Eksempel viser, hvorledes man tegner tætheden for en normalfordeling. Eks Normalfordelingstæthed med µ = 120 og σ = 18 tegnet med PROC GPLOT. DATA n; DO x= 50 TO 190 BY 2; p=100*0.3989*(1/18)*exp(-(((x-120)/18)**2)/2); OUTPUT; END; SYMBOL1 V=NONE I=SPLINE; PROC GPLOT ; PLOT p*x=1/vaxis=0 TO 3 BY 1 FRAME ; Hvis man vil tegne en normalfordeling sammen med et histogram, kan det gøres ved at kombinere eksempel og Her er tegnet et histogram for variable tryk for gruppen af mænd. Oven i dette histogram er tegnet er normalfordelingstæthed, hvor parametrene er valgt således, at middelværdien er lig med gennemsnittet og variansen er lig med den empiriske varians i det datamateriale, der ligger til grund for histogrammet. Det fælles datasæt er konstrueret med ordren MERGE, der kombinerer to eller ere datasæt. Eks Histogram og normalfordelingstæthed tegnet med PROC GPLOT. DATA t; SET klinik.data; IF sex='mand'; tryk=round(tryk/10)*10; PROC FREQ; TABLES tryk/noprint OUT=freqdata; DATA t2; SET freqdata; nypct=percent/10; l=tryk-5; h=tryk+5; DATA t3;
54 4.3 PROC GPLOT 51 DO x= 50 TO 190 BY 2; p=100*0.3989*(1/18)*exp(-(((x-120)/18)**2)/2); OUTPUT; END; DATA t4; MERGE t2 t3; SYMBOL1 V=NONE I=STEPCJ C=BLUE; SYMBOL2 V=NONE I=NEEDLE C=BLUE; SYMBOL3 V=NONE I=SPLINE C=RED; PROC GPLOT DATA=t4; PLOT nypct*tryk=1 nypct*h=2 nypct*l=2 p*x=3 /VAXIS=0 TO 3 BY 1 FRAME OVERLAY; Hvis man vil tegne et histogram hvor grupperne ikke er lige lange kan det gøres ved hjælp af PROC GPLOT på følgende måde. Her er variablen ALDER grupperet i intervallerne 20-29, 30-39, 40-44, 45-49, 50-54, 55-59, 60-64, 65-69, 70-79; Eks Histogram hvor grupperne ikke er lige lange. DATA t; SET klinik.data; IF alder GE 20 AND alder LT 30 THEN alder=20; ELSE IF alder GE 30 AND alder LT 40 THEN alder=30; ELSE IF alder GE 70 AND alder LT 80 THEN alder=70; ELSE alder=int(alder/5)*5; PROC FREQ; TABLE alder/noprint OUT=freqdata; DATA t1; SET freqdata; IF alder =20 OR alder=30 OR alder=70 THEN nypct=percent/10; ELSE nypct=percent/5; IF alder =20 OR alder=30 OR alder=70 THEN h=alder+10; ELSE h=alder+5; KEEP nypct alder h ; SYMBOL1 V=NONE I=STEPL C=BLUE; SYMBOL2 V=NONE I=NEEDLE C=red; SYMBOL3 V=NONE I=STEPR C=blue; PROC GPLOT DATA=t1; PLOT nypct*alder=1
55 52 Grak i SAS nypct*alder=2 nypct*h=2 nypct*h=3 / FRAME OVERLAY; 4.4 Udskriftsdirigerende ordrer i grak. GOP- TIONS TITLE I SAS-graph angives overskrifter med ordren TITLE 'overskrift';. Selve overskriften, der kun må fylde 1 linie, sættes i ' '. Samme tegning kan have ere overskrifter. De angives så med TITLE1 'overskrift1';, TITLE2 'overskrift2'; etc. TITLE-ordren skal stå efter grakprogrammet. Overskrifterne i kapitel 4 er skrevet med ordren TITLE 'Eksempel n.n.n.'; Akser og fonte Man kan også selv denere sine akser. I PROC GPLOT bruger man HAXIS og VAXIS for henholdsvis den horisontale og vertikale akse. (Eksempel og Eksempel ) I PROC GCHART bruger man tilsvarende MIDPOINTS og RAXIS som vist i eksempel GOPTIONS For at kontrollere skriftstørrelse og skrifttyper kan man indlede programmet med en GOPTIONS-ordre af formen GOPTIONS HSIZE=n1 VSIZE=n2 FTEXT=SWISS HTEXT=h1 HTITLE=h2; Her angiver HSIZE=n1 VSIZE=n1, at tegningen skal være n1 tommer bred og n2 tommer høj; FTEXT=SWISS angiver, at man skal bruge skrifttypen (fonten) SWISS, og HTEXT=2 og HTITLE=3 angiver, at bogstaverne generelt skal have højden 2 (HTEXT=2), mens bogstaverne i titlen skal have højde 3 (HTITLE=3). Man kunne have valgt en speciel font til titlen med FTITLE=fontnavn. Yderligere fonte og andre valgmuligheder er angivet i SAS-GRAPH og i kapitel 7. Har man æ, ø og å i overskrifter er man nødt til at bruge specialfonte. Tegningerne i afsnit 4.2 er udført med ordren GOPTIONS HSIZE=3 VSIZE=3 FTEXT=SWISS HTEXT=1.5 HTITLE=3; Fonte og bogstavstørrelse kan også deneres direkte i programmerne som
56 4.4 Udskriftsdirigerende ordrer i grak. GOPTIONS 53 vist nedenfor. Dette program giver samme tegning som eksempel Eks Denition af fonte og bogstavstørrelser PROC SORT DATA=klinik.data; BY sex; SYMBOL1 V=DOT I=RL; AXIS1 ORDER=20 TO 80 BY 10 VALUE=(H=2 F=SWISS) LABEL=(H=2 F=SWISS); AXIS2 ORDER=50 TO 200 BY 50 VALUE=(H=2 F=SWISS) LABEL=(H=2 F=SWISS); PROC GPLOT; PLOT tryk*alder=1/frame HAXIS=AXIS1 VAXIS=AXIS2; BY sex; TITLE H=3 F=SWISS 'Eksempel 4.3.4';
57 54 Grak i SAS 4.5 SAS opgaver Kapitel 2: Indlæsning og tilrettelæggelse af DATA i SAS 2.2 Indlæsning af data Opgave Konstruer et SAS-datasæt test med tre variable x, y og z, og 12 observationer, der antager værdierne (0,1,6), (1,0,9), (0,0,1), (0,0,20), (0,1,5), (0,1,2), (1,1,3), (1,1,8), (1,1,7), (0,1,0), (0,0,15), (1,1,4). I de følgende spørgsmål genbruges datasættet test ved ordren SET. 2.3 Konstruktion af deldatasæt Opgave Konstruer på grundlag af test et nyt datasæt, der kun indeholder de to variable x og y. Opgave Konstruer på grundlag af test et nyt datasæt, der indeholder alle observationer med x=1 Opgave Konstruer på grundlag af test et nyt datasæt, der indeholder alle observationer med x=0 og y=1. Opgave Konstruer på grundlag af test et nyt datasæt, der kun indeholder variablen z og kun observationer med y= Sammenetning af datasæt Opgave Konstruer et SAS-datasæt test1 med tre variable x, y og z, og 4 observationer, der antager værdierne (0,0,9), (1,0,6), (0,1,1), (1,1,5). Sammensæt test og test1 til et datasæt med 16 observationer og 3 variable. Opgave Konstruer et SAS-datasæt test2 med to variable r og v, og 12 observationer, der antager værdierne (1, nej), (2, ja) (3, nej), (4, nej), (5, ja), (6, nej), (7, nej), (8, ja), (9, nej), (10, nej), (11, nej), (12, ja). Sammensæt test og test2 til et datasæt med 12 observationer og 5
58 4.5 SAS opgaver 55 variable. 2.5 Konstruktion af nye variable Opgave Konstruer på grundlag af test et nyt datasæt, der sammen med x, y og z indeholder de to nye variable t=5x og u=y/3. Opgave Konstruer på grundlag af test et nyt datasæt, der indeholder de tre variable z, u=x+y og v=ylogy. Undersøg, om der er manglende værdier i datasættet. Opgave Konstruer på grundlag af test et nyt datasæt, der indeholder y og en ny variabel v, der antager værdien ja, når y=0 og nej ellers. Opgave Konstruer på grundlag af test et nyt datasæt, der indeholder x og y, og hvor z er grupperet i intervaller af længden 3. Opgave Skriv et program, der beregner poissonsandsynlighederne for λ = 4 og x = 0, 1,..., 10. Opgave Skriv et program, der beregner sandsynlighederne i binomialfordelingen for n = 6 og p = Opgave Skriv et program, der beregner q(x) = 4x e 4 x x e x for x = 0, 1,..., 10. Sørg for at der ikke bliver manglende værdier. Opgave Brug resultaterne fra opgave og skriv et program, der beregner ɛ(x) = 1 P χ 2 1 ( 2 log q(x)) for x = 0, 1,..., 10. Opgave Konstruer på grundlag af test et nyt datasæt, der sammen med x, y og z indeholder en variabel, hvis værdier er observationsnummer/12. Opgave Konstruer på grundlag af test et nyt datasæt, der sammen med x, y og z indeholder de kumulerede værdier af x og de kumulerede værdier af yz.
59 56 Grak i SAS Kapitel 3: SAS-procedurer 3.4 PROC SORT Opgave Konstruer på grundlag af test et nyt datasæt, der er sorteret efter voksende værdier af x og y. Opgave Konstruer på grundlag af test et nyt datasæt, der er sorteret efter voksende værdier af x og aftagende værdier af y. Opgave Konstruer på grundlag af test et nyt datasæt, der indeholder z og en ny variabel r, der angiver rangen for z, dvs hvilket nummer den pågældende observation af z har blandt de ordnede variable. 3.5 PROC MEANS Opgave Konstruer på grundlag af test et nyt datasæt, der for hver kombination af x og y indeholder summen af z-værdierne. Opgave Lad for x = 0, 1,... p x betegne poissonsandsynlighederne for λ = 4. Skriv et program, der for x = 0, 1,..., 10 beregner x y=0 p y. Opgave Brug SAS til at regne IH opgave Opgave Følgende program frembringer 100 observationer fra en Ufordeling, idet seed er et helt tal, som man selv skal vælge for at starte simuleringen. DATA temp; DO i= 1 TO 100; x=rannor (seed); OUTPUT; END; KEEP x; Frembring 100 normalfordelte observationer og beregn gennemsnit og empirisk standardafvigelse. Test en hypotese om, at middelværdien i fordelingen er 0.
60 4.5 SAS opgaver PROC FREQ Opgave Lav på grundlag af test en tosidet tabel, hvor observationerne er inddelt efter værdier af x på den ene led og værdier af y på den anden led. Opgave Brug SAS til at regne IH opgave 5.4. Opgave Brug SAS til at regne IH opgave 5.5. Opgave Brug SAS til at regne IH opgave PROC UNIVARIATE Opgave Frembring 100 normalfordelte observationer (se opgave 3.5.4) og nd deres median. 3.8 PROC CORR Opgave Følgende program frembringer 100 observationer fra en 2-dimensional normalfordeling, idet seed1 og seed2 er to (forskellige) hele tal, som man selv skal vælge for at starte simuleringen. DATA temp; DO i= 1 TO 100; x=rannor (seed1); y=rannor (seed2); OUTPUT; END; KEEP x y; Find den empiriske korrelationskoecient for (X,Y) og (X,X+Y). Opgave Nedenstående program frembringer værdier for de 4 variable X,Y,Z,W. Find den empiriske korrelationskoecient for (X,Y), (X,Z) og (X,W). DATA temp; DO x=-10 TO 10 by 1; y=x**2; z=x;
61 58 Grak i SAS w=y+z; OUTPUT; END; Kapitel 4: Grak i SAS 4.2 PROC GCHART Opgave Tegn fordelingen af alkoholprocenter hos førerne for hver ulykkeskategori i IH opgave Tegn fordelingen for hele materialet. Opgave Frembring 200 normalfordelte observationer (se opgave 3.5.4) og tegn et histogram. Opgave Følgende program frembringer m observationer fra en binomialfordeling med antalsparameter n og sandsynlighedsparameter p, idet seed erethelttal,sommanselvskalvælgeforatstartesimuleringen. DATA temp; DO i= 1 TO m; x=ranbin (seed, n, p); OUTPUT; END; KEEP x; Vælg værdier for p, n og m og frembring et observationssæt. Beregn gennemsnit og empirisk varians. Tegn observationernes fordeling. 4.3 PROC GPLOT Opgave Betragt følgende datasæt med to variable T og X. T X (a) Brug PROC GPLOT til at tegne punkterne (T,X).
62 4.5 SAS opgaver 59 (b) Brug PROC GPLOT til at tegne punkterne (T,X) sammen med den rette linie, der passer 'bedst'. (c) Tag ekstra punkter ind i datasættet og undersøg, hvorledes dette ændrer linien i (b). Opgave Lav et plot af (X,Y) og (X,X+Y) i opgave Opgave Lav et plot af (X,Y), (X,Z) og (X,W) i opgave
En Introduktion til SAS. Kapitel 5.
En Introduktion til SAS. Kapitel 5. Inge Henningsen Afdeling for Statistik og Operationsanalyse Københavns Universitet Marts 2005 6. udgave Kapitel 5 T-test og PROC UNIVARIATE 5.1 Indledning Dette kapitel
ØVELSE 2B. Formål Det primære formål med denne øvelse er at prøve nogle vigtige procedurer til statistisk og grafisk analyse.
ØVELSE 2B I denne øvelse gennemgår vi: Udskrivning ved hjælp af PUT. Procedurerne FREQ, UNIVARIATE og CORR. Overførsel af procedure-uddata til et datasæt. Fremstilling af histogrammer og XY-plots. Formål
SAS systemet SAS. SAS vinduer. 2012 Janne Petersen
SAS systemet SAS 2012 Janne Petersen February 7, 2012 Styrken i SAS er dets evne til at håndtere store datasæt. Det er hurtigt og har mange statistiske og ikke-statistiske muligheder. Kan "alt", så det
Introduktion til SAS. Faculty of Health Sciences
Faculty of Health Sciences Introduktion til SAS Susanne Rosthøj Biostatistisk Afdeling Institut for Folkesundhedsvidenskab Københavns Universitet [email protected] Eksempel: Blodtryk og fedme OBESE: vægt/idealvægt,
Kort intro til SAS. Efterår 2015. Janne Petersen Judith L Jacobsen Lene Theil Skovgaard
Kort intro til SAS Efterår 2015 Janne Petersen Judith L Jacobsen Lene Theil Skovgaard 1 Hvorfor SAS Kan alt Alle ph.d. studerende har gratis adgang Fra universitetet eller hospitalerne Kode --- hjælp fra
Hvorfor SAS Kort intro til SAS
Hvorfor SAS Kort intro til SAS Efterår 2015 Janne Petersen Judith L Jacobsen Lene Theil Skovgaard Kan alt Alle ph.d. studerende har gratis adgang Fra universitetet eller hospitalerne Kode --- hjælp fra
Postoperative komplikationer
Løsninger til øvelser i kategoriske data, oktober 2008 1 Postoperative komplikationer Udgangspunktet for vurdering af den ny metode må være en nulhypotese om at der er samme komplikationshyppighed, 20%.
Afdeling for Teoretisk Statistik August 2004 Institut for Matematisk fag Aarhus Universitet. Jørgen Granfeldt INTRODUKTION TIL SAS 1
Afdeling for Teoretisk Statistik August 2004 Institut for Matematisk fag Aarhus Universitet Jørgen Granfeldt INTRODUKTION TIL SAS 1 1 Eksempler baseret på SAS 9.1 for Windows Indholdsfortegnelse INDHOLDSFORTEGNELSE................................
Regressionsanalyse i SAS
Københavns Universitet Statistik for Biokemikere Det naturvidenskabelige fakultet Inge Henningsen Afdeling for Anvendt Matematik og Statistik December 2006 Regressionsanalyse uden gentagelser Regressionsanalyse
Det kunne godt se ud til at ikke-rygere er ældre. Spredningen ser ud til at være nogenlunde ens i de to grupper.
1. Indlæs data. * HUSK at angive din egen placering af filen; data framing; infile '/home/sro00/mph2016/framing.txt' firstobs=2; input id sex age frw sbp sbp10 dbp chol cig chd yrschd death yrsdth cause;
Kvantitative Metoder 1 - Forår 2007. Dagens program
Dagens program Kapitel 7 Introduktion til statistik Organisering af data Diskrete variabler Kontinuerte variabler Beskrivende statistik Fraktiler Gennemsnit Empirisk varians og spredning Empirisk korrelationkoe
Modelkontrol i Faktor Modeller
Modelkontrol i Faktor Modeller Julie Lyng Forman Københavns Universitet Afdeling for Anvendt Matematik og Statistik Statistik for Biokemikere 2003 For at konklusionerne på en ensidet, flersidet eller hierarkisk
Statistiske Modeller 1: Kontingenstabeller i SAS
Statistiske Modeller 1: Kontingenstabeller i SAS Jens Ledet Jensen October 31, 2005 1 Indledning Som vist i Notat 1 afsnit 13 er 2 log Q for et test i en multinomialmodel ækvivalent med et test i en poissonmodel.
Bilag til Statistik i løb : Statistik og Microsoft Excel tastevejledning / af Lars Bo Kristensen
Bilag til Statistik i løb : Statistik og Microsoft Excel tastevejledning / af Lars Bo Kristensen Microsoft Excel har en del standard anvendelsesmuligheder i forhold til den beskrivende statistik og statistisk
MPH specialmodul i epidemiologi og biostatistik. SAS. Introduktion til SAS. Eksempel: Blodtryk og fedme
MPH specialmodul i epidemiologi og biostatistik. SAS Introduktion til SAS. Display manager (programmering) Vinduer: program editor (med syntaks-check) log output reproducerbart (program teksten kan gemmes
PROC TRANSPOSE. SAS-tabellen - hensigtsmæssig lagring af data. Copyright 2011 SAS Institute Inc. All rights reserved.
PROC TRANSPOSE SAS-tabellen - hensigtsmæssig lagring af data Copyright 2011 SAS Institute Inc. All rights reserved. Transponerede tabeller Brede eller smalle? Hvad: Brede tabeller har mange kolonner med
Opgavebesvarelse, Basalkursus, uge 3
Opgavebesvarelse, Basalkursus, uge 3 Opgave 1: Udskrivning af astma patienter (DGA s. 273) I en randomiseret undersøgelse foretaget af Storr et. al. (Lancet, i, 1987) sammenlignes effekten af en enkelt
Kort introduktion til SAS
Kort introduktion til SAS Janne Petersen Efterår 2013 SAS systemet Styrken i SAS er dets evne til at håndtere store datasæt. Det er hurtigt og har mange statistiske og ikke-statistiske muligheder. Kan
Løsning eksamen d. 15. december 2008
Informatik - DTU 02402 Introduktion til Statistik 2010-2-01 LFF/lff Løsning eksamen d. 15. december 2008 Referencer til Probability and Statistics for Engineers er angivet i rækkefølgen [8th edition, 7th
Introduktion til SPSS
Introduktion til SPSS Øvelserne på dette statistikkursus skal gennemføres ved hjælp af det såkaldte SPSS program. Det er erfaringsmæssigt sådan, at man i forbindelse af øvelserne på statistikkurser bruger
SAS systemet. Kort introduktion til SAS. SAS vinduer. Janne Petersen. Efterår 2013
SAS systemet Kort introduktion til SAS Janne Petersen Efterår 2013 Styrken i SAS er dets evne til at håndtere store datasæt. Det er hurtigt og har mange statistiske og ikke-statistiske muligheder. Kan
Normalfordelingen. Statistik og Sandsynlighedsregning 2
Normalfordelingen Statistik og Sandsynlighedsregning 2 Repetition og eksamen Erfaringsmæssigt er normalfordelingen velegnet til at beskrive variationen i mange variable, blandt andet tilfældige fejl på
Deskriptiv statistik. Version 2.1. Noterne er et supplement til Vejen til matematik AB1. Henrik S. Hansen, Sct. Knuds Gymnasium
Deskriptiv (beskrivende) statistik er den disciplin, der trækker de væsentligste oplysninger ud af et ofte uoverskueligt materiale. Det sker f.eks. ved at konstruere forskellige deskriptorer, d.v.s. regnestørrelser,
Opgave 1 Betragt to diskrete stokastiske variable X og Y. Antag at sandsynlighedsfunktionen p X for X er givet ved
Matematisk Modellering 1 (reeksamen) Side 1 Opgave 1 Betragt to diskrete stokastiske variable X og Y. Antag at sandsynlighedsfunktionen p X for X er givet ved { 1 hvis x {1, 2, 3}, p X (x) = 3 0 ellers,
Projekt 8.3 Hvordan undersøges om et talmateriale normalfordelt?
Projekt 8.3 Hvordan undersøges om et talmateriale normalfordelt? Projektet drejer sig om at udvikle en metode, til at undersøge om et givet talmateriale med rimelighed kan siges at være normalfordelt.
Billedbehandling og mønstergenkendelse: Lidt elementær statistik (version 1)
; C ED 6 > Billedbehandling og mønstergenkendelse Lidt elementær statistik (version 1) Klaus Hansen 24 september 2003 1 Elementære empiriske mål Hvis vi har observationer kan vi udregne gennemsnit og varians
Reeksamen i Statistik for biokemikere. Blok 3 2007.
Københavns Universitet Det Naturvidenskabelige Fakultet Reeksamen i Statistik for biokemikere. Blok 3 2007. Opgave 1. 3 timers skriftlig prøve. Alle hjælpemidler - også blyant - er tilladt. Opgavesættet
Naturvidenskabelig Bacheloruddannelse Forår 2006 Matematisk Modellering 1 Side 1
Matematisk Modellering 1 Side 1 I nærværende opgavesæt er der 16 spørgsmål fordelt på 4 opgaver. Ved bedømmelsen af besvarelsen vægtes alle spørgsmål lige. Endvidere lægges der vægt på, at det af besvarelsen
Løsning til eksamen d.27 Maj 2010
DTU informatic 02402 Introduktion til Statistik Løsning til eksamen d.27 Maj 2010 Referencer til Probability and Statistics for Engineers er angivet i rækkefølgen [8th edition, 7th edition]. Opgave I.1
Anvendt Statistik Lektion 6. Kontingenstabeller χ 2- test [ki-i-anden-test]
Anvendt Statistik Lektion 6 Kontingenstabeller χ 2- test [ki-i-anden-test] Kontingenstabel Formål: Illustrere/finde sammenhænge mellem to kategoriske variable Opbygning: En celle for hver kombination af
Statistiske modeller
Statistiske modeller Statistisk model Datamatrice Variabelmatrice Hændelse Sandsynligheder Data Statistiske modeller indeholder: Variable Hændelser defineret ved mulige variabel værdier Sandsynligheder
Statistik (deskriptiv)
Statistik (deskriptiv) Ikke-grupperede data For at behandle ikke-grupperede data i TI, skal data tastes ind i en liste. Dette kan gøres ved brug af List, hvis ikon er nr. 5 fra venstre på værktøjsbjælken
Vejledende besvarelse af eksamen i Statistik for biokemikere, blok
Opgave 1 Vejledende besvarelse af eksamen i Statistik for biokemikere, blok 2 2006 Inge Henningsen og Niels Richard Hansen Analysevariablen i denne opgave er variablen forskel, der for hver af 10 kvinder
MPH specialmodul i epidemiologi og biostatistik. SAS. Introduktion til SAS. Eksempel: Blodtryk og fedme
MPH specialmodul i epidemiologi og biostatistik. SAS Introduktion til SAS. Display manager (programmering) Vinduer: program editor (med syntaks-check) log output reproducerbart (program teksten kan gemmes
Statistik FSV 4. semester 2014 Øvelser Uge 2: 11. februar
Århus 6. februar 2014 Morten Frydenberg Statistik FSV 4. semester 2014 Øvelser Uge 2: 11. februar Til disse øvelser har I brug for fishoil1.dta, der indeholder data fra det fiskeolie forsøg vi så på ved
Institut for Matematiske Fag Sandsynlighedsregning og Statistik 2. R opgaver
Institut for Matematiske Fag Sandsynlighedsregning og Statistik 2 Københavns Universitet Susanne Ditlevsen og Helle Sørensen R opgaver Det er en god ide at vænne sig til at skrive kommandoerne i en editor
Tegning af grafer. Grafen for en ligning (almindelig) Skriv ligningen ind. Højreklik og vælg Plots -> 2-D Plot of Right Side.
TgPakken TgPakken er en række kommandoer til Maple tilegnet til det danske gymnasium. Det er rigtig smart til at kontrollere ens opgaver, men som alenestående svar til en eksamen er det ikke altid tilstrækkeligt.
Lineær regression. Simpel regression. Model. ofte bruges følgende notation:
Lineær regression Simpel regression Model Y i X i i ofte bruges følgende notation: Y i 0 1 X 1i i n i 1 i 0 Findes der en linie, der passer bedst? Metode - Generel! least squares (mindste kvadrater) til
Statistik og Sandsynlighedsregning 2. Repetition og eksamen. Overheads til forelæsninger, mandag 7. uge
Statistik og Sandsynlighedsregning 2 Repetition og eksamen Overheads til forelæsninger, mandag 7. uge 1 Normalfordelingen Erfaringsmæssigt er normalfordelingen velegnet til at beskrive variationen i mange
Opgavebesvarelse, logistisk regression
Opgavebesvarelse, logistisk regression Data ligger i rop.xls på kursushjemmesiden: http://staff.pubhealth.ku.dk/ jufo/courses/logistic/ Når du har gemt data på din computer, kan det indlæses i SAS med
Program. Konfidensinterval og hypotesetest, del 2 en enkelt normalfordelt stikprøve I SAS. Øvelse: effekt af diæter
Program Konfidensinterval og hypotesetest, del 2 en enkelt normalfordelt stikprøve Helle Sørensen E-mail: [email protected] I formiddag: Øvelse: effekt af diæter. Repetition fra sidst... Parrede og ikke-parrede
Vejledende besvarelse af hjemmeopgave i Basal statistik for lægevidenskabelige forskere, forår 2013
Vejledende besvarelse af hjemmeopgave i Basal statistik for lægevidenskabelige forskere, forår 2013 I forbindelse med reagensglasbehandling blev 100 par randomiseret til to forskellige former for hormonstimulation.
Man indlæser en såkaldt frequency-table i SAS ved følgende kommandoer:
1 IHD-Lexis 1.1 Spørgsmål 1 Man indlæser en såkaldt frequency-table i SAS ved følgende kommandoer: data ihdfreq; input eksp alder pyrs cases; lpyrs=log(pyrs); cards; 0 2 346.87 2 0 1 979.34 12 0 0 699.14
Matematik A. Studentereksamen. Forberedelsesmateriale til de digitale eksamensopgaver med adgang til internettet
Matematik A Studentereksamen Forberedelsesmateriale til de digitale eksamensopgaver med adgang til internettet stx11-matn/a-080501 Tirsdag den 8. maj 01 Forberedelsesmateriale til stx A Net MATEMATIK Der
Binomial fordeling. n f (x) = p x (1 p) n x. x = 0, 1, 2,...,n = x. x x!(n x)! Eksempler. Middelværdi np og varians np(1 p). 2/
Program: 1. Repetition af vigtige sandsynlighedsfordelinger: binomial, (Poisson,) normal (og χ 2 ). 2. Populationer og stikprøver 3. Opsummering af data vha. deskriptive størrelser og grafer. 1/29 Binomial
Statistik Lektion 20 Ikke-parametriske metoder. Repetition Kruskal-Wallis Test Friedman Test Chi-i-anden Test
Statistik Lektion 0 Ikkeparametriske metoder Repetition KruskalWallis Test Friedman Test Chiianden Test Run Test Er sekvensen opstået tilfældigt? PPPKKKPPPKKKPPKKKPPP Et run er en sekvens af ens elementer,
Anvendt Statistik Lektion 6. Kontingenstabeller χ 2 -test [ki-i-anden-test]
Anvendt Statistik Lektion 6 Kontingenstabeller χ 2 -test [ki-i-anden-test] 1 Kontingenstabel Formål: Illustrere/finde sammenhænge mellem to kategoriske variable Opbygning: En celle for hver kombination
Lars Andersen: Anvendelse af statistik. Notat om deskriptiv statistik, χ 2 -test og Goodness of Fit test.
Lars Andersen: Anvendelse af statistik. Notat om deskriptiv statistik, χ -test og Goodness of Fit test. Anvendelser af statistik Statistik er et levende og fascinerende emne, men at læse om det er alt
Basal statistik. 30. januar 2007
Basal statistik 30. januar 2007 Deskriptiv statistik Typer af data Tabeller Grafik Summary statistics Lene Theil Skovgaard, Biostatistisk Afdeling Institut for Folkesundhedsvidenskab, Københavns Universitet
2 -test. Fordelingen er særdeles kompleks at beskrive med matematiske formler. 2 -test blev opfundet af Pearson omkring år 1900.
2 -fordeling og 2 -test Generelt om 2 -fordelingen 2 -fordelingen er en kontinuert fordeling, modsat binomialfordelingen som er en diskret fordeling. Fordelingen er særdeles kompleks at beskrive med matematiske
Basal Statistik Kategoriske Data
Basal Statistik Kategoriske Data 8 oktober 2013 E 2013 Basal Statistik - Kategoriske data Michael Gamborg Institut for sygdomsforebyggelse Københavns Universitetshospital [email protected]
Normalfordelingen og Stikprøvefordelinger
Normalfordelingen og Stikprøvefordelinger Normalfordelingen Standard Normal Fordelingen Sandsynligheder for Normalfordelingen Transformation af Normalfordelte Stok.Var. Stikprøver og Stikprøvefordelinger
Reeksamen i Statistik for Biokemikere 6. april 2009
Københavns Universitet Det Naturvidenskabelige Fakultet Reeksamen i Statistik for Biokemikere 6. april 2009 Alle hjælpemidler er tilladt, og besvarelsen må gerne skrives med blyant. Opgavesættet er på
1 Start og afslutning. Help.
Afdeling for Teoretisk Statistik STATISTIK 2 Institut for Matematiske Fag Jørgen Granfeldt Aarhus Universitet 24. september 2003 Hermed en udvidet udgave af Jens Ledet Jensens introduktion til R. 1 Start
Oversigt. Introduktion til Statistik. Forelæsning 2: Stokastisk variabel og diskrete fordelinger
Introduktion til Statistik Forelæsning 2: og diskrete fordelinger Oversigt 1 2 3 Fordelingsfunktion 4 Peder Bacher DTU Compute, Dynamiske Systemer Bygning 303B, Rum 017 Danmarks Tekniske Universitet 2800
Løsning til eksaminen d. 14. december 2009
DTU Informatik 02402 Introduktion til Statistik 200-2-0 LFF/lff Løsning til eksaminen d. 4. december 2009 Referencer til Probability and Statistics for Engineers er angivet i rækkefølgen [8th edition,
Statistik med TI-Nspire CAS version 3.2. Bjørn Felsager September 2012. [Fjerde udgave]
Statistik med TI-Nspire CAS version 3.2 Bjørn Felsager September 2012 [Fjerde udgave] Indholdsfortegnelse Forord Beskrivende statistik 1 Grundlæggende TI-Nspire CAS-teknikker... 4 1.2 Lister og regneark...
Normalfordelingen. Statistik og Sandsynlighedsregning 2
Statistik og Sandsynlighedsregning 2 Repetition og eksamen T-test Normalfordelingen Erfaringsmæssigt er normalfordelingen velegnet til at beskrive variationen i mange variable, blandt andet tilfældige
Statistik Lektion 1. Introduktion Grundlæggende statistiske begreber Deskriptiv statistik
Statistik Lektion 1 Introduktion Grundlæggende statistiske begreber Deskriptiv statistik Introduktion Kursusholder: Kasper K. Berthelsen Opbygning: Kurset består af 5 blokke En blok består af: To normale
Statistik Lektion 1. Introduktion Grundlæggende statistiske begreber Deskriptiv statistik Sandsynlighedsregning
Statistik Lektion 1 Introduktion Grundlæggende statistiske begreber Deskriptiv statistik Sandsynlighedsregning Introduktion Kasper K. Berthelsen, Inst f. Matematiske Fag Omfang: 8 Kursusgang I fremtiden
Program dag 2 (11. april 2011)
Program dag 2 (11. april 2011) Dag 2: 1) Hvordan kan man bearbejde data; 2) Undersøgelse af datamaterialet; 3) Forskellige typer statistik; 4) Indledende dataundersøgelser; 5) Hvad kan man sige om sammenhænge;
KURSUS I ANALYSEPORTALEN (AP) DANSK PALLIATIV DATABASE 3 1. ÅBNING AF ANALYSEPORTALEN 3 2. OPRETTELSE AF EN RAPPORT DVS. START AF DATAANALYSE 4
KURSUS I ANALYSEPORTALEN (AP) DANSK PALLIATIV DATABASE 3 1. ÅBNING AF ANALYSEPORTALEN 3 2. OPRETTELSE AF EN RAPPORT DVS. START AF DATAANALYSE 4 3. VALG AF DATA 5 4. BEHANDLING OG VISNING AF DATA 7 1 Liste
Analysestrategi. Lektion 7 slides kompileret 27. oktober 200315:24 p.1/17
nalysestrategi Vælg statistisk model. Estimere parametre i model. fx. lineær regression Udføre modelkontrol beskriver modellen data tilstrækkelig godt og er modellens antagelser opfyldte fx. vha. residualanalyse
Grupperede observationssæt Deskriptiv statistik: Middelværdi, frekvensfordeling, sumkurve, kvartilsæt, boxplot
Grupperede datasæt: Middelværdi, intervalfrekvens og kumuleret frekvens. Bilbestandens alder i 2005 fremgår af følgende tabel. Alder i år ]0;4] ]4;8] ]8;12] ]12;16] ]16;20] ]20;24] Antal i tusinde 401
Adgangsgivende eksamen (udeladt kategori: Matematisk student med matematik på niveau A)
Økonometri 1 Forår 2003 Ugeseddel 13 Program for øvelserne: Gruppearbejde Opsamling af gruppearbejdet og introduktion af SAS SAS-øvelser i computerkælderen Øvelsesopgave 6: Hvem består første årsprøve
Statistik i GeoGebra
Statistik i GeoGebra Peter Harremoës 13. maj 2015 Jeg vil her beskrive hvordan man kan lave forskellige statistiske analyser ved hjælp af GeoGebra 4.2.60.0. De statistiske analyser svarer til pensum Matematik
MPH specialmodul Epidemiologi og Biostatistik
MPH specialmodul Epidemiologi og Biostatistik Kvantitative udfaldsvariable 23. maj 2011 www.biostat.ku.dk/~sr/mphspec11 Susanne Rosthøj (Per Kragh Andersen) 1 Kapitelhenvisninger Andersen & Skovgaard:
Forelæsning 3: Kapitel 5: Kontinuerte fordelinger
Kursus 02402 Introduktion til Statistik Forelæsning 3: Kapitel 5: Kontinuerte fordelinger Per Bruun Brockhoff DTU Compute, Statistik og Dataanalyse Bygning 324, Rum 220 Danmarks Tekniske Universitet 2800
INTRODUKTION TIL SAS
INTRODUKTION TIL SAS MOGENS RING PETERSEN August 2010 INDHOLDSFORTEGNELSE SAS SOM PROGRAMMERINGSSPROG... 4 Programstrukturen i SAS... 4 SAS's hjælpesystem... 5 Eksempler på SAS-programmer... 5 Datatyper...
Lineær og logistisk regression
Faculty of Health Sciences Lineær og logistisk regression Susanne Rosthøj Biostatistisk Afdeling Institut for Folkesundhedsvidenskab Københavns Universitet [email protected] Dagens program Lineær regression
Kapitel 7 Forskelle mellem centraltendenser
Kapitel 7 Forskelle mellem centraltendenser Peter Tibert Stoltze [email protected] Elementær statistik F2011 1 / 29 Indledning 1. z-test for ukorrelerede data 2. t-test for ukorrelerede data med ens
Faculty of Health Sciences. Logistisk regression: Kvantitative forklarende variable
Faculty of Health Sciences Logistisk regression: Kvantitative forklarende variable Susanne Rosthøj Biostatistisk Afdeling Institut for Folkesundhedsvidenskab Københavns Universitet [email protected] Sammenhæng
Tips og tricks til Proc Means. Per Andersen
Tips og tricks til Proc Means Capgemini gruppen Grundlagt 1967 i Paris, startet i Danmark 1984 Omsætning på verdensplan i 2008 8,7 milliader euro 91.600 medarbejdere på verdensplan, heraf 300 i Danmark
Konfidensintervaller og Hypotesetest
Konfidensintervaller og Hypotesetest Konfidensinterval for andele χ -fordelingen og konfidensinterval for variansen Hypoteseteori Hypotesetest af middelværdi, varians og andele Repetition fra sidst: Konfidensintervaller
Velkommen til StatBK. Program. Introduktion, summary measures, SAS. Praktisk info. Praktisk info
Program Introduktion, summary measures, SAS Helle Sørensen E-mail: [email protected] I dag: Praktiske informationer Faglig intro: et par dataeksempler Datatyper Beskrivende statistik, bla. gennemsnit og
SAS formater i Danmarks Statistik
Danmarks Statistik, Forskningsservice og Kundecenter 9. januar 2012 SAS formater i Danmarks Statistik 1. Indledning... 1 2. Hvor findes formater og øvrige datafiler?... 2 3. Hvordan bruges formater i SAS-programmet?...
Gennemsnit og normalfordeling illustreret med terningkast, simulering og SLUMP()
Gennemsnit og normalfordeling illustreret med terningkast, simulering og SLUMP() John Andersen, Læreruddannelsen i Aarhus, VIA Et kast med 10 terninger gav følgende udfald Fig. 1 Result of rolling 10 dices
