/* 2018.02.12 2. gyakorlat - SAS SZTE, Statisztika gyakorlati alkalmazasai */ /* LIBNAME-mel a mult heti konyvtar ujra beallithato kodbol: la18 a SAS library neve, a fizikai eleresi utja a szerveren a sajat mappamban letrehozott a2 nevu mappa Uj valtozo kepzese (sorrend, ora, perc, mperc, fido) a mult heti adatallomanybol (kekjo) kiindulva, de uj allomanyba (kekjobb) mentve. Futasi idot (mpercben) kulon kiszamitjuk (fido) az alabbi gondolatment alapjan: 1. nap befutottak ( _N_ <= 4): (ora-9)*3600 + 60*perc + mperc (de. 9-kor kezdodott a verseny) 2. nap befutottak (4 < _N_ ): (15+ora)*3600 + 60*perc + mperc */ libname la18 "/home/laszlo.anna/a2"; data la18.kekjobb; set la18.kekjo; sorrend = _N_ ; ora = substr(befut,1,2); perc = substr(befut,4,2); mperc = substr(befut,7,2); if _N_ le 4 then fido=(ora-9)*3600+perc*60+mperc; else fido=(15+ora)*3600+perc*60+mperc; run; /* if - then - else vezerlesi szerkezet helyett: select - when hasznalata */ data la18.gyors la18.kozep la18.lassu; set la18.kekjobb; select; when(ys<90) output la18.gyors; when(ys<110) output la18.kozep; otherwise output la18.lassu; end; run; /* Leiro statisztika: abrazoljuk hisztogramon a futott idoket, es a tobbi folytonos valtozo eloszlasat is Az adott abrak termeszetesen fuggnek az eloszlastol. */ proc univariate data=la18.gyors; histogram futott / normal ; run; proc univariate data=la18.kozep; histogram ; run; /* gyakorisagok szamitasa: yardstick szam csoportokban es a hajo tipus kategoriakban a megfigyelt elemszamok */ proc freq data=la18.gyors; tables ys kateg / out=la18.freq; run; /* Gyakorisagok kimentese kulon adatallomanyba */ proc freq data=la18.gyors; tables ys / out=la18.gyys; run; /* Adatok abrazolasa gyakorisagi oszlopdiagramon Task and Utilities \ Graph \ Bar Chart gyors adatallomanyon YS a kategoria valtozo A kattintassal kigeneralt kod: ODS: Output Delivery System --> a grafikus megjelenites utja megnyithato */ ods graphics / reset width=6.4in height=4.8in imagemap; proc sgplot data=LA18.GYORS; vbar YS /; yaxis grid; run; ods graphics / reset; /* korrelacio szamitas: Pearson linearis korrelacios koefficiensek es p-ertekek a paronkenti korrelaciok szamitasara */ proc corr data=la18.kekjobb; run; /******* statisztikai tablazas ********/ /* melyik kategoriaba milyen ys szamu hajobol mennyi tartozik TABLE utasitasban vesszovel valasztjuk el az egyes dimenziokat: kateg igy sordimenzioba kerul, ys pedig oszlopdimenzioba */ proc tabulate data=la18.gyors; class kateg ys; var sorrend futott korrig; table kateg, ys ; run; /* A sorokban kategoriak es osszesen, valamint ys es osszesen Oszlopokban: elemszam, sorrend, futott ido es korrigalt ido atlaga */ proc tabulate data=la18.gyors; class kateg ys; var sorrend futott korrig; table kateg all ys all, sorrend*n sorrend*mean futott*mean korrig*mean ; run; /* Tabla csinositasa */ title "Statisztikai tábla a"; title2 "Kékszalag vitorlás verseny gyors hajóiról"; proc tabulate data=la18.gyors; class kateg ys; var sorrend futott korrig; table kateg="" all="Kategória összesen" ys="" all="Yardstick összesen", sorrend=""*n="Gyakoriság" sorrend=""*mean="Átlag sorrend" futott=""*mean="Átlagos futott idő" korrig=""*mean = "Átlagos korrigált idő" ; run;