/*A munkakönyvtár beállítása. */ libname liska "/home/jozsefcsicsman/Liska" ; /** Import an XLSX file. **/ PROC IMPORT DATAFILE="/home/jozsefcsicsman/Liska/keksz.xlsx" OUT=liska.kek DBMS=XLSX REPLACE; RUN; /** Print the results. **/ PROC PRINT DATA=liska.kek; RUN; proc contents DATA=liska.kek; RUN; data liska.kekjo (keep = sorrend kateg Hajonev YS Befut futott korrig) ; rename b=kateg ; rename Befutasi_ido_oo_pp_ss=Befut ; rename Futott_ido_sec=futott ; rename Korrigalt_ido_sec=korrig ; set liska.kek ; sorrend=_N_ ; if _N_ le 524 then output ; run ; proc means data=liska.kekjo ; run ; proc univariate data=liska.kekjo ; histogram ; run ; /* Karakteres változók numerikussá konvertálása */ data liska.kekjo ; set liska.kekjo ; futottnum=input(futott,8.); korrignum=input(korrig,8.); run ; /* Gyakoriság tábla a YS változóra*/ proc sort data=liska.kekjo ; by ys ; run ; proc freq data=liska.kekjo ; by ys ; run ; title 'A hajók teljesítményeinek korrelációja'; proc corr data=liska.kekjo ; run ; proc sort data=liska.kekjo ; by futott ; run ; /* A kategória változó eloszlása táblázatosan*/ proc sort data=liska.kekjo out=rendezett; by kateg; run; proc freq data=rendezett; tables kateg / out=gy; run; /* Ugyanez grafikonon ábrázolva */ proc gchart data=gy; vbar kateg / sumvar=count ; run; quit; /* új változók képzése, függvények elágazások és aritmetikai utasítások*/ data liska.kek2 ; set liska.kekjo ; ora=substr(Befut,1,2) ; kora=1*ora ; perc=substr(Befut,4,2) ; mp=substr(Befut,7,2) ; if _N_ lt 5 then do ; ido= 3600*(ora-9)+60*perc+mp ; kora=kora-9 ; end ; else do ; ido= 15*3600 +3600*ora+60*perc+mp ; kora=kora+15 ; end ; korrigalt=ido*100/ys ; run ; /* A hajók szépválasztása sebességük szerint külön adatállományokba*/ data liska.gyors liska.kozep liska.lassu ; set liska.kek2 ; select ; when (ys < 90 ) output liska.gyors ; when ( ys < 110 ) output liska.kozep ; otherwise output liska.lassu ; end ; run ; /* A sebességkategóriánkénti eloszlások*/ proc univariate data=liska.gyors ; histogram ys ; run ; proc univariate data=liska.kozep ; histogram ys ; run ; proc univariate data=liska.lassu ; histogram ys ; run ; /*Készítsünk statisztikai táblákat!*/ proc tabulate data=liska.kek2 ; class ys ; var ido ; table ys ; run ; proc tabulate data=liska.kek2 ; class ys ; var kora ido ; table ys, ido*n kora*mean ido*mean ; run ;