Title | Egzamin 8 styczeń 2019, pytania |
---|---|
Course | Podstawowe i zaawansowane programowanie oraz statystyka w SAS |
Institution | Szkola Glówna Handlowa w Warszawie |
Pages | 6 |
File Size | 153.8 KB |
File Type | |
Total Downloads | 38 |
Total Views | 125 |
Pytania z egzaminu z podstawowych i zaawansowanego programowania i statystyki w SAS...
Egzamin z Przetwarzania Danych w SAS, dnia 18-02-2014 Imię i Nazwisko: Nr albumu: Dane do zadań, zbiór sashelp.class: Obs
Name
Sex
Age
Height
Weight
1
Alfred
M
14
69.0
112.5
2
Alice
F
13
56.5
84.0
3
Barbara
F
13
65.3
98.0
4
Carol
F
14
62.8
102.5
5
Henry
M
14
63.5
102.5
6
James
M
12
57.3
83.0
7
Jane
F
12
59.8
84.5
8
Janet
F
15
62.5
112.5
9
Jeffrey
M
13
62.5
84.0
10
John
M
12
59.0
99.5
11
Joyce
F
11
51.3
50.5
12
Judy
F
14
64.3
90.0
13
Louise
F
12
56.3
77.0
14
Mary
F
15
66.5
112.0
15
Philip
M
16
72.0
150.0
16
Robert
M
12
64.8
128.0
17
Ronald
M
15
67.0
133.0
18
Thomas
M
11
57.5
85.0
19
William
M
15
66.5
112.0
Zad 1. Zapisać składnią SAS 4GL instrukcjami data-stepu następujący algorytm: Jeśli zmienna a1 jest różna od jeden to wykonaj instrukcje: podstaw do b1 wartość 10 a potem wypisz w logu treść „wykonano podstawienie”, w przeciwnym przypadku (gdy a1 jest równe jeden) to wykonaj instrukcje: do b1 wstaw 20 i wypisz do logu komunikat „a1 = 1”.
Zad 2. Co jest wartością wyrażenia przekazanego do zmiennej a, jaka jest jej wartość po wykonaniu poniższego kodu:
data w; a=1+1/0; run; Zad 3. Wypisz wszystkie zmienne występujące w PDV, czyli po wykonaniu instrukcji put _all_: 1
data w; array t(*) a b; array v(3); put _all_; run;
Zad 4. Jakie są wartości zmiennych a, b i c?
data w; length a b c $100; do i=1 to 10; a=a||'#'; b=trim(b)||'#'; c=compress(c,' %')||'#%'; end; run;
Zad 5. Opisać zbiór wynikowy wynik: liczbę wierszy, kolumn i ich wartości, najlepiej w postaci tabelki.
data wynik; length a b $ 10; do i=1 to 3; if missing(a) then output; else a=1; end; b=100; a=100; run;
Zad 6. Ile będzie obserwacji w zbiorach zb1, zb2 i zb3?
2
data zb1 zb2 zb3; set sashelp.class; output; if sex='F'; output; if age in (11,12,13) then output zb3; run;
Zad 7. Opisać zbiór wynikowy wynik: liczbę wierszy, kolumn i ich wartości, najlepiej w postaci tabelki (nie trzeba liczyć procentów, ale można).
data w; set sashelp.class(obs=4); if _n_=2 then do; name='SAS'; age=90; end; if name='Alfred' then name=''; do i=1 to int(age); output; end; run; proc freq data=w noprint; table name / missing out=wynik; run;
Zad 8. Opisać zbiór wynikowy stat: liczbę wierszy, kolumn i ich wartości, najlepiej w postaci tabelki. 3
proc format; value wiek low-12 = 'Mały' 14-high = 'Duży' ; proc means data=sashelp.class(rename=(age=wiek)) nway noprint; class wiek; format wiek wiek.; var weight; output out=stat n()=; run;
Zad 9. Przedstawić finalny raport procedury tabulate wykonany poniższym kodem (przedstawić wszystkie wiersze, kolumny i liczby w postaci tabelarycznej):
proc tabulate data=sashelp.class(where=(name like '_a%')); class name; var age; table name='' all, age=''*(n max)*f=12. / box='Osoba'; run;
Zad 10. Jaki tekst jest wartością zmiennej a po wykonaniu poniższego kodu, zaznaczyć każdą spację jako znak ‘˽’?
4
data w; length a $ 10; do i=1 to 10; if i in (3,5,10) then substr(a,i,1)='S'; end; run; Zad 11. Opisz atrybuty zmiennych zbioru wynik, kolejność w PDV, nazwę, typ i długość, (zrobić tabelkę)?
proc sql noprint; select substr(name,2,3) into :nazwy separated by ' ' from sashelp.class(obs=3); quit; data wynik; wiek='99'; length &nazwy $ 10; wiek=99; run;
Zad 12. Opisz zbiór wynikowy wynik: nazwy kolumn, ich wartości, liczba obserwacji, najlepiej w postaci tabelki.
data wynik; t='ala ma kota'; do i=1 to 2; t=compress(t,substr(t,i,1)); end; run;
Zad 13. Ile powstanie zbiorów danych, o jakich nazwach i ile obserwacji będzie w każdym z nich po wykonaniu poniższego kodu?
%macro zbiory(tekst); 5
%do i=1 %to %length(&tekst); %let z=%substr(&tekst,&i,1); data &z; set sashelp.class; where index(upcase(name),"&z")>0; run; %end; %mend; %zbiory(ABW);
Zad 14 . Jaka będzie wartości makro-zmiennej wynik po wykonaniu poniższego kodu?
data _null_; set sashelp.class; call symput(trim(name),put(age,12.-L)); run; proc sql noprint; select name into :osoby separated by '#' from sashelp.class order by name; quit; %let i=2; %let wynik=&&%scan(&osoby,&i,#); %put &wynik; Zad 15. Jaki tekst jest wartością zmiennej TEKST w zbiorze WYNIK po wykonaniu poniższego kodu?
data wynik; a=mdy(1,21,2014); b='19jan2014'd; a=a*24*3600+a-b; tekst=put(a,datetime19.); run;
6...