background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

1

System SAS – wykład 1,cz. II – wprowadzenie do 

4GL

1. Biblioteki. 
2. Instrukcja LIBNAME.
3. Zbiory danych w Systemie SAS.
4. Wprowadzenie do języka 4GL.
5. Czytanie zbiorów sasowych. Instrukcje SET i MERGE .
6. Instrukcja INFILE.
7. Instrukcja CARDS.
8. Składnia PROC stepu, procedura SORT. 
9. Procedury IMPORT i EXPORT.
10. Procedura FREQ.
11. Procedura MEANS.

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

2

Biblioteki i instrukcja LIBNAME

Biblioteka w SASie jest to ścieżka dostępu do fizycznego miejsca na dysku gdzie 

znajdują się dane. Bibliotekę można zdefiniować interaktywnie z okna Explorera:

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

3

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

4

Instrukcja LIBNAME

Bibliotekę można również stworzyć w programach SAS - 4GL za 
pomocą instrukcji LIBNAME:

LIBNAME 

nazwa_biblioteki ‘ścieżka_do_danych’;

Nazwy bibliotek są ośmioliterowe i mogą składać się z liter, cyfr i 
znaku „_”(nie mogą zaczynać się od cyfry.

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

5

Oprócz  bibliotek  przez  nas  zdefiniowanych  istnieją  też  biblioteki 

standardowe, np.:

WORK Biblioteka  do  przechowywania  zbiorów  tymczasowych.  Jej 

zawartość  jest  czyszczona  po  zamknięciu  każdej  sesji  SASa. 
Tworzone zbiory domyślnie zapisują się w tej bibliotece.

SASUSER Biblioteka zawierająca konfigurację środowiska sasowego. 

SASHELP  Biblioteka  zawierająca  aplikacje,  tabele  i  pliki  niezbędne  do 

   funkcjonowania systemu SAS. 

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

6

Zbiory danych w Systemie SAS.

Zbiory służą do przechowywania danych. Do zbioru odwołujemy się podając 
nazwę  biblioteki  i  nazwę  zbioru  przedzielone kropką  (jeśli  występuje  tylko 
nazwa zbioru SAS w domyśle poszukuje go w bibliotece WORK) np.:

SASUSER.ZBIOR

Zbiór w SASie jest dwuwymiarową tablicą składającą się z kolumn i wierszy, 
które nazywamy odpowiednio zmiennymi i obserwacjami.
Zmienne mogą być numeryczne lub tekstowe.

KATALOGI
Inne  informacje  niż  dane  przechowywane  są  w  obiektach  katalogowych. 
Katalogi  sasowe  nie  mają  nic  wspólnego  z  katalogami  w  systemie 
operacyjnym.

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

7

4  Generation  Language  (4GL).  Przetwarzanie  danych  za  pomocą  tego  języka 
polega  na  przetwarzaniu  całych  zbiorów  danych  za  pomocą  pojedynczych 
procedur. 
Program  w  języku  4GL składa się z bloków zwanych stepami, które wykonywane 
są  sekwencyjnie.  Najpierw  linie  kodu  są  interpretowane  za  pomocą  kompilatora 
języka  4GL,  a  następnie  wykonywane.  Komunikacja  pomiędzy  poszczególnymi 
blokami  odbywa  się  za  pomocą  makrozmiennych,  makroprogramów  lub  z 
wykorzystaniem zbiorów danych tworzonych w poprzednich blokach.
Bloki mogą być dwóch typów:
DATA  STEP  -  blok  zawierający  instrukcje  związane  głównie  z  przetwarzaniem 
danych
PROC  STEP  –  blok  zawierający  wywołanie  jednej,  gotowej  procedury  Systemu 
SAS.
Dodatkowo  pomiędzy  blokami  mogą  pojawić  się  instrukcje  takie  jak  LIBNAME, 
OPTIONS, TITLE itp.

Wprowadzenie do języka 4GL

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

8

Składnia bloku (DATA stepu) :

DATA

 zbiór_wynikowy;

   ...

;

   

instrukcje;

   ...

;

run

;

Każda instrukcja w DATA stepie musi kończyć się średnikiem.

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

9

Data step może czytać dane ze zbiorów SASowych za pomocą instrukcji:

SET

 

zbiór_wejściowy_1 

<(opcje_zbioru_1)> 

... 

zbiór_wejściowy_n 

<(opcje_zbioru_n)>;
lub

MERGE

  zbiór_wejściowy_1  <(opcje_zbioru_1)>  ...  zbiór_wejściowy_n 

<(opcje_zbioru_n)>;
Jeśli czytanych jest więcej niż jeden zbiór instrukcje set i merge powodują 
złączenie tych zbiorów w jeden, 

Przykład:

DATA

 zbiór_wyjściowy

   

SET

 zbiór_wejściowy

   Instrukcje;

RUN

;

Czytanie zbiorów sasowych. Instrukcje SET i MERGE

 

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

10

DATA

 zbiór_wyjściowy;

   

MERGE

 zbiór_1 zbiór_2;

/*łączy dwa zbiory w jeden*/

   <BY zmienne_grupujące>;

/*zbiory muszą być posortowane*/

RUN

;

Instrukcja  BY  powoduje,  że  czytane  zbiory  łączone  są  po  zmiennej 
grupującej. Zmienna ta musi występować w obydwu zbiorach.

Przykład łączenia danych z instrukcją BY

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

11

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

12

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

13

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

14

Instrukcja INFILE

Data  step  może  również  czytać  dane  ze  zbiorów  tekstowych  za 
pomocą instrukcji:

INFILE

 ‘ścieżka_do_zbioru_tekstowego’;

INPUT

 lista_zmiennych;

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

15

Przykład:

DATA

 zbiór_wyjściowy;

   

INFILE

 ‘C:\przykład\tekst1.txt’ <opcje>;

   

INPUT

 zm1<$> zm2<$>;

RUN

;

Opcje  instrukcji  INFILE  pozwalają  na  określenie  różnorodnych 

parametrów czytanego pliku np.:

DLM=‘znak’  określa zestaw znaków traktowanych jako separatory np.: 

DLM=‘;’, domyślnie DLM ustawiony jest na spację

FIRSTOBS= określa numer pierwszej czytanej linii, np.: FIRSTOBS=10
OBS= określa numer ostatniej czytanej linii
Data  step  czyta  kolejne  linie  zbioru  tekstowego  i  w  każdej  z  nich 

odczytuje  poszczególne  zmienne  wymienione  po  słowie  INPUT 
przyjmując  założenie,  że  są  one  oddzielone  separatorami.  Jeśli 
któreś zmienne są znakowe po ich nazwie musi być użyty znak $.

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

16

Instrukcja CARDS

Dane  mogą  być  również  wpisane  bezpośrednio  z  klawiatury  w  treść 

programu w języku 4GL za pomocą instrukcji:

CARDS

;

Przykład:

DATA

 wynik;

   INPUT

 zm1 zm2$;

   CARDS

;

   1 marek
   2 jacek
   3 jola

RUN

;

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

17

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

18

PROC

 

nazwa_procedury

 DATA=zbiór_wejściowy  opcje_procedury;

...

;

Instrukcje;

...

;

run

;

Przykład:

PROC

 

SORT

  

DATA

=zbiór_wejściowy  <opcje>;

BY

 <

DESCENDING

> zmienna_1  <

...

<

DESCENDING

> zmienna_n>; 

RUN

Domyślny porządek w procedurze sort jest rosnący.

Składnia PROC stepu, procedura sort

 

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

19

PROC

 

IMPORT

 DATAFILE=”

C:\zbiory\zbior"

  

   OUT=<

libref.

>zbior_wyjściowy 

   <DBMS=identifier <REPLACE>; 

Opcja DBMS określa typ danych do wyeksportowania, np. Excel, 
Accsess.
Słowo REPLACE powoduje zamianę już istniejącego pliku o 
podanej nazwie.

PROC

 

EXPORT

 DATA=zbiór_wejściowy 

   OUTFILE=

„C:\zbiory\zbior1"

   

   <DBMS=identifier <REPLACE>; 

Procedury import i export

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

20

Kreatory importu i eksportu

Pliki z excela czy accessa można również zaimportować i wyeksportować przy użyciu kreatora importu i 

eksportu.
Import Wizard:

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

21

Eksport Wizard:

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

22

Procedura FREQ

Procedura  FREQ  służy  przede  wszystkim  do  zliczania  częstości  wystąpień 

poszczególnych  wartości  podanych  zmiennych.  Liczone  mogą  być  także 

częstości  narastające,  udziały  procentowe  i  udziały  procentowe  narastające. 

Składnia tej procedury jest następująca:

PROC

 

FREQ

 

DATA

=zbiór_wejściowy <opcje>;

   <BY zmienne_grupujące>;  

   TABLES

 tablice_częstości  </opcje>; 

   <WEIGHT zmienna_ważąca;>

RUN

Zmienne_grupujące  w  instrukcji  BY  są  to  zmienne  wyznaczające  podział  na 

grupy,  w  których  oddzielnie  liczone  są  poszczególne  tablice.  Aby  użyć  tej 

instrukcji zbiór musi być wcześniej posortowany.
Instrukcja  TABLES  oblicza  tablice  częstości  dla  poszczególnych  zmiennych 

wymienionych po spacji. Opcja OUT=zbiór tej instrukcji powoduje stworzenie 

zbioru wynikowego zawierającego wszystkie policzone wartości.
Zmienna_ważąca  określa  wagę  z  jaką  dane  obserwacje  mają  być 

uwzględnione.

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

23

Procedura MEANS

Procedura  MEANS  wylicza  wszelkie  statystyki  opisowe  na  zbiorach  danych 

sasowych. Statystyki mogą być liczone dla całego zbioru lub w grupach. 
Składnia procedury MEANS:

PROC

 

MEANS

 

DATA

=zbiór_wejściowy <statystyki>; 

   VAR

 zmienne_analizowane

   <opcje;>

RUN

Domyślnie procedura means wylicza N, MEAN, STD, MIN, MAX.
Przykładowe opcje procedury means:
CLASS zmienne_grupujące;
BY zmienne_grupujące;
Różnica pomiędzy instrukcjami CLASS i BY polega na tym, że instrukcja CLASS 

nie  wymaga  wcześniejszego  posortowania  zbioru  jednak  można  ją  używać  dla 

zmiennych o niewielkiej liczbie możliwych wartości wyznaczających grupy.
WEIGHT zmienna_ważąca;
OUTPUT OUT=zbiór_wynikowy;

background image

 

Instytut Statystyki i Demografii SGH, KAE, SGH

Statystyka od podstaw z wykorzystaniem narzędzi SAS

Prowadzący - Prof. dr hab. Ewa Frątczak, Mgr inż. Urszula Gach, Mgr Dorota Stala

Instytut Statystyki i Demografii SGH

24

Zadania

1. Stworzyć zbiór sasowy file2 z pliku tekstowego file2. Zbiór ma zawierać 2 

zmienne wzrost i plec

2.  Policzyć  tablice  częstości  dla  zmiennej  plec  ze  zbioru  file2.  Uzyskane 

wyniki  zapisać  w  zbiorze  plec  w  bibliotece  wyniki.  Obliczyć  średnią  dla 

zmiennej wzrost osobno dla mężczyzn i osobno dla kobiet. Wyniki zapisać 

do zbioru.

3. Połączyć zbiory zbior1 i zbior2 po zmiennej i a następnie uporządkować 

malejąco daty w powstałym zbiorze. Zapisać zbiór w formacie excela. 


Document Outline