Információs rendszerek a gyakorlatban 2. Előadás Adatkezelés a SAS rendszerben.

Slides:



Advertisements
Hasonló előadás
GRIN: Gráf alapú RDF index
Advertisements

Információs függvények
Algoritmusok.
Access Adatbáziskezelés
Matematika és Tánc Felkészítő tanár: Komáromi Annamária
Számítógépek felépítése 3. előadás CPU, utasítás ciklus, címzés
Körlevél készítése.
Cells(sor száma, oszlop száma)
A számítógép alapegységei
Belső memóriák tipusai
Algoritmusok Az algoritmus fogalma:
7. előadás (2005. április 12.) Láncolt lista File kezelés 1.
Ez a dokumentum az Európai Unió pénzügyi támogatásával valósult meg. A dokumentum tartalmáért teljes mértékben Szegedi Tudományegyetem vállalja a felelősséget,
C A C nyelv utasításai.
Központi feldolgozó egység (CPU)
LDinamikus tömbök, kétdimenziós tömbök Alkalmazott Informatikai Tanszék MŰSZAKI INFORMATIKA dr.Dudás László 21./0. lVektorok létrehozása futásidőben, dinamikusan.
CISC - RISC processzor jellemzők
C++ Alapok, első óra Elemi típusok Vezérlési szerkezetek
Access alapok Táblák, kapcsolatok, űrlapok.
A projekt az Európai Unió támogatásával, az Európai Szociális Alap társfinanszírozásával valósul meg. Pannon Egyetem Georgikon Kar Szegedi Tudományegyetem.
KÖRDOKUMENTUM készítése
1 Operációs rendszerek Az NT folyamatok kezelése.
Microsoft Access Jelentések.
Körlevél.
A programozás alapjai A számítógép számára a feladat meghatá- rozását programozásnak nevezzük. Ha a processzor utasításait használjuk a feladat meghatározásához,
Információs rendszerek a gyakorlatban
Körlevél.
A REKORD TIPUS Páll Boglárka. Ismétlés: Feladat Készítsünk kimutatást a XI.B osztály tanulóiról. Minden tanuló esetén a következő adatokat tartjuk nyilván:
Ciklusok (iterációk).
Szintaktikai, szemantikai szabályok
Körlevél.
Nézzük, mit tudunk…. Mire gondoltam? Megjeleníti az adott adatbázishoz kapcsolódó összes objektumot : adatbázis ablak.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
VÉGES AUTOMATA ALAPÚ TERVEZÉSI MODELL
Csempe Programozás érettségi mintafeladat
Adatbázis-kezelés Probléma: az excel kezelhetetlen túl sok adat esetén
Egy második generációs gép (az IBM 7094) felépítése
Egy első generációs gép (az IAS) felépítése
A Mikroprocesszor Harmadik rész.
HF MINTA 2012/2013. ősz. HF Minta  Objektum-orientált program  „Adatvezérelt” alkalmazás írása  Fájl kezelés (olvasás, írás)  Menü készítése  5-6.
Adatbázis alapfogalmak
Párhuzamosság, kritikus szakasz, szemaforok Operációs rendszerek.
Webprogramozó tanfolyam
Kördokumentumok 1..
Programozás, programtervezés
Adatbáziskezelés. Adat és információ Információ –Új ismeret Adat –Az információ formai oldala –Jelsorozat.
C Programozási alapok.
CPU Bus Unit terület 4-5. CPU Bus Unit terület A CPU Bus Unit terület 400 szót tartalmaz a CIO 1500 –tól CIO 1899 – ig terjedő területen. A CPU Bus Unit.
Összeállította: Sashalmi Tibor
Algoritmusok és Adatszerkezetek Egy kifejezés lengyelformára hozása - bemutató.
A 2. géptermi beszámoló VBA anyagának összefoglalása
Kiterjesztések szemantikája: Szemantikai tartomány : Adatoknak, vagy értékeknek egy nem üres halmazát szemantikai tartománynak nevezzük. Jelölése: D. Egy.
Fájlszervezés Adatbázisok tervezése, megvalósítása és menedzselése.
Adatszerkezetek és algoritmusok 2008/ Algoritmus Az algoritmus szó eredete a középkori arab matematikáig nyúlik vissza, egy a i.sz. IX. században.
Informatikai gyakorlatok 11. évfolyam
A ROM ÉS A BIOS. K ÉSZÍTETTE R ELL P ATRIK A ROM A ROM egy olyan elektrotechnikai eszköz, amely csak olvasható adatok tárolására alkalmas memória. Tartalma.
KONFIGURÁCIÓKEZELÉS è A projektirányítás a költségekkel, erőforrásokkal és a felhasznált idővel foglalkozik. è A konfigurációkezelés pedig magukkal a termékekkel.
TÁMOP /1-2F Informatikai gyakorlatok 11. évfolyam Alapvető programozási tételek megvalósítása Czigléczky Gábor 2009.
Programok készítése és futtatása. Integrált fejlesztői környezet (IDE) tartalmaz:  szövegszerkesztőt a program forráskódjának szerkesztésére,  fordítóprogramot.
Programozási alapok.
Kördokumentum készítése
Neumann János Informatikai Kar
Riportok, táblák, programok
Compiler illetve interpreter nyelvek
SAS Base bevezetés Csicsman József
Bevezetés a programozásba Algoritmikus gondolkodás
Algoritmusok Az algoritmus fogalma:
Informatikai gyakorlatok 11. évfolyam
Informatikai gyakorlatok 11. évfolyam
Cache példák 2019 (IMSC).
Előadás másolata:

Információs rendszerek a gyakorlatban 2. Előadás Adatkezelés a SAS rendszerben

Miről lesz szó az előadáson Mi a SAS adatállomány (SAS dataset) és miért van rá szükség? Hogyan működik a DATA step? Milyen információkra van szüksége a SAS rendszer- nek, hogy SAS adatállományokat hozzon létre? Milyen adatbeviteli stílusok vannak, amelyek megengedettek az INPUT utasításban? Milyen adatbeviteli módok vannak a SAS rendszerben?

Miért van szükség SAS adatállományra? A SAS adatelemzési és feldolgozási eljárásokat nyújt, amelyek megoldhatják a felmerülő, az információ feldolgozáshoz és kinyeréshez kapcsolódó feladatainkat Az első lépés: az adatokat a SAS számára értelmezhető formába kell hozni, el kell érni, hogy a rendszer felismerje azokat Ezután lehet majd feldolgozni, elemezni és jelentéseket előállítani

Adatbeviteli módok nyers adatok DATA utasítás más SAS utasítások az elemzés eredménye SAS eljárások SAS adatál- lomány Itt vagyunkIde szeretnénk eljutni DATA step PROC step Jelentések

A DATA step 3 összetevője nyers adatok DATA utasítás INPUT utasítás További utasítások SAS adatál- lomány

SAS adatállományok létrehozása módosítással DATA utasítás SET, MERGE, MODIFY vagy UDDATE További utasítások Régi SAS adatál- lomány Új SAS adatál- lomány

A SAS adatállomány szerkezete A SAS téglalap alakú struktúrába (táblázat, mátrix) szervezi az adatokat Ha már egy SAS adatállományban vannak az adataink, akkor további DATA stepekkel módosíthatjuk, illetve sok egyéb SAS eljárással elemezhetjük Ez a téglalap struktúra sorokból és oszlopokból áll. A sorokat megfigyeléseknek, az oszlopokat változóknak nevezzük. Nyers adatállományban a sorok neve rekord, az oszlopoké mező

Hallgatók nyers adatai Neptun_ kod NevSzak Kredit_in dex2009 Kredit_inde x2010 GHT325 Kovács János PTI_BSc Z6SD23 Németh Lajos GI_BSc T385R2 Szabó Csilla GI_BSc PXRYW6 Nagy Krisztián PTI_MSc XS714K Pap Boldizsár GI_MSc adatmezők

Hallgatók SAS adatállománya Az adatok az Informatikai Kar hallgatóinak tanulmányi eredményeit tartalmazzák Neptun_ kod NevSzak Kredit_ind ex2009 Kredit_inde x2010 GHT325Kovács JánosPTI_BSc Z6SD23Németh LajosGI_BSc T385R2Szabó CsillaGI_BSc PXRYW6Nagy KrisztiánPTI_MSc XS714KPap BoldizsárGI_MSc megfigyelés változó adat érték

SAS adatállományok felépítése Egy SAS adatállomány két részből áll A leíró (descriptor) rész az adatállományban lévő rekordok tulajdonságairól szóló informá- ciókat tartalmazza úm. A változók nevét és típusát, a megfigyelések számát, a létrehozás dátumát továbbá bizonyos operációs rendszertől függő információkat (pl. engine) A tartalom részben a konkrét adat értékek vannak strukturáltan felsorolva (SAS belső adatszerkezet)

Adatállományok ideiglenes létrehozása 1.data hallgatok; 2. input Neptun_kod $ 1-6 Nev $ 7-27 Szak $ Kredit_index2009 Kredit_index2010; 3. Valtozas = Kredit_index Kredit_index2009; 4. datalines; 5.GHT325 Kovács János PTI_BSc Z6SD23 Németh Lajos GI_BSc T385R2 Szabó Csilla GI_BSc PXRYW6 Nagy Krisztián PTI_MSc XS714K Pap Boldizsár GI_MSc ; 11.run;

A program elemzése Az egyszintű névadással ideiglenes adatállományt hozunk létre, amely csak a munkaszakasz (session) alatt létezik, annak lezárultával törlődik. Az ideiglenes adatállományok a WORK könyvtárban tárolódnak Az ideiglenes adatállományokra való hivatkozásnál elegendő csak egyszintű nevet használni, azaz a hallgatok és work.hallgatok nevek ugyanarra az adatállományra hivatkoznak

A hallgatok SAS logja 1 DATA hallgatok; 2 INPUT Neptun_kod $ 1-6 Nev $ 7-27 Szak $ Kredit_index2009 Kredit_index2010; 3 Valtozas = Kredit_index Kredit_index2009; 4 DATALINES; NOTE: The data set WORK.HALLGATOK has 5 observations and 6 variables. NOTE: DATA statement used (Total process time): real time 0.76 seconds cpu time 0.00 seconds 10 ; 11 RUN;

Állandó SAS adatállományok Ehhez a WORK helyett más SAS könyvtárral van szükségünk (természetesen olyanra, melyre írási jogunk is van) Egy ilyen logikai-fizikai könyvtár hivatkozást a libref utasítással tehetünk meg: LIBNAME libref ‘a-SAS-könyvtárunk-neve’; libref: annak a könyvtárnak a logikai neve, ahol a SAS fájlainkat tároljuk, érvényes SAS névnek kell lennie de csak 8 hosszú lehet ‘a-SAS-könyvtárunk-neve’ : a SAS könyvtárunk fizikai neve, azaz olyan név melyet az operációs rendszer felismer és így attól függ

Példa állandó SAS adatállományra LIBNAME mylib 'C:\SAS\DATA'; DATA mylib.hallgatok; INPUT Neptun_kod $ 1-6 Nev $ 7-27 Szak $ Kredit_index2009 Kredit_index2010; Valtozas = Kredit_index Kredit_index2009; DATALINES; GHT325 Kovács János PTI_BSc Z6SD23 Németh Lajos GI_BSc T385R2 Szabó Csilla GI_BSc PXRYW6 Nagy Krisztián PTI_MSc XS714K Pap Boldizsár GI_MSc ; RUN;

A LOG fájl 12 LIBNAME mylib 'C:\SAS\DATA'; NOTE: Libref MYLIB was successfully assigned as follows: Engine: V9 Physical Name: C:\SAS\DATA 13 DATA mylib.hallgatok; 14 INPUT Neptun_kod $ 1-6 Nev $ 7-27 Szak $ Kredit_index2009 Kredit_index2010; 15 Valtozas = Kredit_index Kredit_index2009; 16 DATALINES; NOTE: The data set MYLIB.HALLGATOK has 5 observations and 6 variables. NOTE: DATA statement used (Total process time): real time 0.00 seconds cpu time 0.00 seconds

Mi a DATA step SAS utasítások egy sorozata, amely a DATA utasítással kezdődik A DATA utasítás jelzi, hogy egy új SAS adatállományt hozunk létre és el is nevezi azt A DATA lépésben lévő utasítások lefordítódnak és szintaktikus ellenőrzésre kerülnek Ha az utasítások szintaktikusan helyesek, akkor végre- hajtódnak egyébként nem Legegyszerűbb formájában a DATA step egy ciklus, amely automatikus kiírási és visszatérési műveletekből áll

A DATA step folyamatábrája

A fordítási (compile) szakasz A végrehajtásra elküldött DATA stepnél a SAS ellenőrzi a szintakszist majd elvégzi a fordítást a megfelelő gépi kódra A kód végrehajtása során az alábbiak jönnek létre: – input puffer – program adatvektor – leíró információ

Input puffer Egy olyan logikai terület a memóriában, melyet a SAS arra használ, hogy oda a nyers adatállomány rekordjait egyenként beolvassa végrehajtáskor Ha a SAS egy már létező SAS adatállományból olvas be, akkor közvetlenül a program adat vektorba töltődnek az adatok

Program adatvektor Egy olyan logikai terület a memóriában, melyet a SAS arra használ, hogy felépítse az adatállományt, egy időben egy megfigyelést kezelve. A program végrehajtásakor a SAS beolvassa az adatokat az input pufferből vagy létrehozza azokat a végrehajtható SAS utasításokkal. Ezután a SAS a változókhoz értéket rendel a program adatvektorban. Végül a SAS kiírja ezeket az értékeket mint egy megfigyelést az output adatállományba. A változók mellett két további változó is létrejön az _N_ és _ERROR_. Az _N_ a DATA step iterációs lépéseinek számlálója. Az _ERROR_ jelzi ha hiba fordult elő. Egyik se íratódik ki az adatállományba.

Leíró információk A SAS adatállományról szóló információk, pl. az adatállomány és a változók jellemzői. A SAS létrehozza és karbantartja ezeket a leíró információkat.

A végrehajtási (execution) szakasz A DATA step minden végrehajtható utasítása pontosan egyszer hajtódik végre az iteráció minden lépésében. Ha van nyers adatállomány, akkor a SAS az input pufferbe olvas. Ezután hozzárendeli a megfelelő értéket a megfelelő változóhoz és a program adatvektorba teszi. Emellett kiszámolja a program által létrehozott új változók értékeit. Amikor a DATA step végére ér a következő 3 lépést hajtja végre

A DATA step lezárása Kiírja az aktuális megfigyelést a program data vektorból a SAS adatállományba A program visszamegy a DATA step elejére A program data vektorban lévő összes változót hiányzó értékre állítja kivéve azokat a változókat melyeket a RETAIN utasításban meghatároztunk és az _N_ és _ERROR_ automatikus változókat Ha van még új rekord a program újra végrehajt, ha nincs akkor lezárja az adatállományt és a következő DATA vagy PROC lépésre lép.

Példa DATA stepre 1.data hallgatok; 2. input Neptun_kod $ 1-6 Nev $ 7-27 Szak $ Kredit_index2009 Kredit_index2010; 3. Valtozas = Kredit_index Kredit_index2009; 4. datalines; 5.GHT325 Kovács János PTI_BSc Z6SD23 Németh Lajos GI_BSc T385R2 Szabó Csilla GI_BSc PXRYW6 Nagy Krisztián PTI_MSc XS714K Pap Boldizsár GI_MSc ; 11.run;

Az utasítások értelmezése 1.A DATA utasítás elkezdi a DATA stepet és elnevezi az adatállományt 2.Az INPUT utasítás 5 változót hoz létre, megmondja hogyan olvasson be a SAS az input pufferből és hozzárendeli az értékeket a változókhoz a program data vektorban 3.Ez a hozzárendelési utasítás egy új változót hoz létre, kiszámolja az értékét minden iterációban majd a program data vektorba írja 4.A DATALINES utasítás jelöli a bemenő adatok kezdetét. Az üres ; jelzi a bemenő adatok és a DATA step végét.

A DATA step folyamata A végrehajtásra elfogadott DATA stepet a SAS automatikusan fordítja majd végrehajtja Fordítási szakasz: létrejön az input puffer, a program adatvektor és a leíró információk a hallgatok adatállományra