Przetwarzanie danych w SAS Wykład II - Dane w Systemie SAS Urszula Zwierz
Przeglądarka VIEWTABLE Przeglądarka VIEWTABLE jest przeglądarką graficzną pozwalającą zarówno na wyświetlenie jak i na edycję danych. Aby wyświetlić zawartość zbioru należy dwukrotnie kliknąć wybrany zbiór. Przeglądarka VIEWTABLE pozwala na: 1. Tworzenie nowej tabeli na podstawie struktury innej tabeli lub ręcznie 2. Edycję i przeglądanie gą danych w formie tabelarycznej (domyślnie) lub też w postaci jednej obserwacji na ekranie 3. Wyszukiwanie danych przy pomocy warunków logicznych 4. Zapisywanie aktualnego podzbioru danych 5. Drukowanie zawartości zbioru danych 2
Przeglądarka VIEWTABLE 3
Przeglądarka VIEWTABLE Przeglądarka VIEWTABLE pozwala na kształtowanie tabeli poprzez zmianę położenia kolumn, ich ukrywanie lub odkrywanie. Przenoszenie: najłatwiej metodą przenieść i upuść : zaznaczyć kolumnę (SHIFT jeśli klika jednocześnie), przenieść trzymając lewy przycisk myszy na wybraną kolumnę i upuścić (kolumna zostanie wstawiona po tej kolumnie). 4
Przeglądarka VIEWTABLE Przeglądarka VIEWTABLE pozwala na kształtowanie tabeli poprzez zmianę położenia kolumn, ich ukrywanie lub odkrywanie. Ukrycie kolumny jest możliwe na 2 sposoby: (1) prawym przyciskiem myszki na danej kolumnie wywołać pop-up menu, wybrać opcję Ukryj, (2) w przypadku konieczności ukrycia lub odkrycia większej liczby kolumn można wykorzystać opcję z Menu: Dane:Ukryj/Odkryj 1 2 5
Przeglądnie i edycja kolumn Atrybuty kolumn można zmieniać dowolnie ale będą one obowiązywały na czas wyświetlania zbioru w przeglądarce. Najłatwiej zmienić atrybuty poprzez wywołanie opcji Atrybuty kolumny z pop-up menu lub z Menu Dane:Atrybuty kolumny. Atrybuty t mogą być ć zmienione i w zakresie: General: Label (etykieta t kolumny), Format (format wyświetlania), Informat (sposób interpretacji danych); Colors: Column Labels(kolor tła i tekstu w nagłówku kolumny), Data (kolor tła i tekstu wewnątrz tabeli); Fonts: Column Labels (czcionka tekstu w nagłówku), Data (czcionka wewnątrz tablicy). 6
Sortowanie zbiorów danych Sortowanie: oprócz uporządkowania kolumn potrzebne jest też uporządkowanie wierszy czyli tzw. sortowanie. Najpierw wybieramy z Menu opcję Edycja:Tryb y Edycji (1) a następnie z pop-up p p menu wybieramy y opcję Sortuj (2) lub po zaznaczeniu kolumny odpowiednią ikonkę z paska narzędzi, dodatkowo można wywołać sortowanie z opcji Dane:Sortuj (3). 1 2 3 7
Formaty i Informaty FORMATY można rozumieć jako przekształcenie zbioru argumentów w zbiór wartości. Formaty są wykorzystywane do zmiany sposobu prezentowania danych, wynikiem takiego przekształcenia jest tekst, który jest wyświetlany użytkownikowi. Np. daty w Systemie SAS są zapisywane jako różnica dni między podaną datą a 1 stycznia 1960, daty zapisuje się jako zmienne numeryczne, zastosowanie formatów pozwala na prezentację dat w sposób czytelny dla użytkownika. Właściwości: 1. Format może być formatem wewnętrznym Systemu SAS lub formatem zdefiniowanym przez użytkownika 2. Formaty użytkownika zapisywane są w katalogach Systemu SAS. 3. Formaty wewnętrzne e mają postać funkcji wyrażeń i agoyt algorytmów 4. Formaty użytkownika są określone przez zbiór wartości i zbiór argumentów 5. Formaty nie muszą być przekształceniem różnowartościowym czyli wielu argumentom może odpowiadać jedna wartość. INFORMATY to przekształcenie zamieniające wejściowy ciąg znaków na wewnętrzną reprezentację danych. Stosowane są najczęściej do zapewnienia prawidłowego wprowadzania danych do bazy. Formaty i Informaty dzielą się na znakowe i numeryczne. Nazwy Formatów i Informatów zawsze kończą się kropką lub zawierają kropkę przed cyfrą oznaczającą liczbę miejsc dziesiętnych. Nazwy nie mogą być dłuższe niż 8 znaków i nie mogą kończyć się cyfrą. Liczba, która może pojawić się w nazwie formatu przed kropką określa maksymalną długość sformatowanego tekstu. t 8
Formaty i Informaty Zastosowanie formatów i Informatów 1. Formaty określają sposób prezentacji danych. Domyślne przypisanie można zastąpić innym na użytek danego narzędzia (np. przeglądarka VIEWTABLE) lub procedury. 2. Informaty określają sposób wczytywania danych. Pozwalają na prawidłowe wprowadzenie do bazy danych. (liczby z separatorem tysięcznym, daty, czas itp.) 3. Konwersja typów i konwersja danych. Dzięki funkcjom put() i input() formaty i informaty można zastosować do konwersji danych w różnych postaciach. 4. Mapowanie kod-opis. Pozwala na rozwiązanie problemów kodowania wartości, np. w bazie może być zakodowane K i M a na wydruku będzie ę się ę pojawiać KOBIETA i MĘŻCZYZNA. 5. Formaty definiowane przez użytkownika mogą być z wykorzystaniem zbiorów danych stąd można rozszerzyć o zastosowania słownikowe, np. format może od razu zamieniać i ć numery klientów na ich pełne ł nazwy bez konieczności ś i łączenia i zbiorów. 6. Formaty mogą dokonywać przekształceń typu n 1, więc można je zastosować jako mechanizm warstwowania danych ciągłych lub łączenia grup wartości w większe całości (agregacja). (np. podział zakresu kwot dochodów na niskie średnie wysokie) 9
Formaty i Informaty Formaty znakowe zamieniają wartości znakowe na ciągi znaków, nazwy formatów znakowych zaczynają się ę od znaku $, $, np. $10.,,$ $char10., $hex8. numeryczne zamieniają wartości numeryczne na ciągi znaków, np. 10.2, commax12., ddmmyy8. Informaty znakowe - zamieniają ciągi znaków na wartości znakowe, nazwy informatów znakowych zaczynają się od znaku $, np. $10., $char10., numeryczne zamieniają ciagi znaków na wartości numeryczne, np. binary4., commax12., yymmdd8. 10
Formaty i Informaty W przeglądarce VIEWTABLE można zmienić format przypisany do zmiennej wykorzystując okno Atrybuty Kolumny (okno jest aktywne z Menu:Dane lub prawym przyciskiem na zaznaczonej kolumnie). Po dokonaniu zmian należy wybrać opcję: Apply. 11
Formaty i Informaty Formaty prezentacja danych np. data _null_; liczba=1234; put liczba; put liczba commax8.2; put liczba percent9.; put liczba date7.; put liczba yymmdd10.; run; Informaty wczytywanie danych np. data _null_; input liczba data yymmdd8. hwartosc hex8.; put liczba commax10.; put data yymmdd10.; put hwartosc; cards; 19990212 19990212 19990212 ; run; 1234 1.234,00 123400% 19MAY63 1963-05-19 19.990.212990 1999-02-12 26841121 12
Wyszukiwanie danych tworzenie podzbiorów W przypadku dużych zbiorów danych odnalezienie informacji jest utrudnione lub niemożliwe. W takich przypadkach pomocne jest zastosowanie opcji wyboru konkretnego wiersza (obserwacji) spełniającego zadane warunki. Przeglądarka VIEWTABLE umożliwia zastosowanie wyszukiwania w opcji Menu:Dane:Warunek 13
Wyszukiwanie danych tworzenie podzbiorów Warunki logiczne to każde wyrażenie dające w wyniku wartość logiczną (PRAWDA lub FAŁSZ), warunki logiczne mogą być zbudowane jako wyrażenia zawierające: - zmienne kolumny z tabeli - stałe konkretne wartości podane przez użytkownika - operatory porównujące (relacyjne) takie jak <(LT) >(GT) =(EQ) ^=(NE) i inne - operatory arytmetyczne - operatory logiczne (AND, OR, NOT) - funkcje matematyczne, konwersji, finansowe, operacji na tekstach, inne (nie ma tej możliwości w VIEWTABLE) - nawiasy () pozwalają na zmianę kolejności obliczeń w wyrażeniu logicznym Dostępne stałe: - stałe numeryczne podajemy z kropką dziesiętną bez separatorów tysięcznych - stałe tekstowe podajemy w apostrofach lub cudzysłowie - stałe dla dat podajemy w formacie ddmonyy d np. 01JAN98 d 14
Wyszukiwanie danych tworzenie podzbiorów Przeglądarka VIEWTABLE pozwala również na tworzenie zupełnie nowych tabel. Nową tabele można otworzyć na dwa sposoby: (1) z Menu:Narzędzia:Edytor Tabel lub (2) wpisując do okienka komend: VIEWTABLE. - Pojawia się tabela z kolumnami opisanymi kolejnymi literami alfabetu, można nadawać nazwy i formaty w opcji ATRYBUTY KOLUMNY - Dane można wpisywać tak jak w arkuszu excella lub nawet wklejać całą tabelę z innego źródła Plik:Wstaw lub tylko sam schemat tabeli z innej Plik:Tak samo jak. 15
Wyszukiwanie danych tworzenie podzbiorów Zastosowanie przeglądarki VIEWTABLE do edycji danych: - Po uruchomieniu przeglądarki należy przejść na tryb do edycji: Edycja:Tryb y edycji, (wówczas podczas modyfikacji tylko dany rekord jest blokowany do edycji dla innych użytkowników), - Aby zablokować całą tabelę do edycji dla innych użytkowników należy wybrać opcję Edycja:Edycja tabeli. Tryb edycji pozwala na: - Poprawianie informacji po wybraniu wiersza i kolumny przy pomocy myszy - Dodawanie nowych wierszy poprzez opcję Edycja:Dodaj wiersz - Kopiowanie istniejących wierszy poprzez opcję Edycja:Kopiuj wiersz - Kasowanie wierszy opcja menu Edycja:Usuń wiersz - Anulowanie zmian dokonanych w aktualnym wierszu Edycja:Anuluj edycję wiersza 16
Komunikacja z aplikacjami biurowymi (podgląd danych HTML i Excel) Wyświetlanie ś i w trybie jedna obserwacja na stronie - Opcja te jest dostępna przez Menu:Widok:Opcje widoku formularza lub ikonka na pasku narzędzi 17
Komunikacja z aplikacjami biurowymi (podgląd danych HTML i Excel) Bezpośredni dostęp do danych zewnętrznych: - definując Bibliotekę można wybrać opcję mechanizmu inną niż Domyślny, w zależności od wyboru pojawią się inne wiersze do uzupełnienia, np. dla pliku w wersji Excell: 18
Aby podejrzeć i zapisać dany plik w Ecxelu lub w HTML można również skorzystać z opcji prawego przycisku myszki klikając bezpośrednio na dany plik (pop- up menu): Komunikacja z aplikacjami biurowymi (podgląd danych HTML i Excel) 19
Import i Export danych Import i Eksport zbiorów danych odbywa się za pomocą Kreatora Importu i Kreatora Eksportu. Mechanizm ten jest dostępny tylko dla danych zapisanych w: - arkuszu kalkulacyjnym y Excel lub Lotus - bazie DBASE - bazie MS ACCESS - plikach tekstowych. Kreator Importu i Kreator Eksportu znajduje się w Menu:Plik:Importuj dane lub Menu: Plik:Eksportuj dane. 20
Import i Export danych Import pliku 21
Import i Export danych Eksport pliku 22
Ćwiczenie nr 1 1. Zmień kolejność kolumn w zbiorze Sklepy tak aby zmienna x5 znalazła się na początku zbioru 2. Zmień Atrybuty kolumny x3 nadając jej tytuł dowolnie wybrany przez siebie 3. Posortuj zbiór Sklepy według wieku funkcjonowania placówek 4. Zmień format wyświetlania danych dla zmiennej x4 nadając jej charakter znakowy zamiast liczbowego 5. Znajdź w zbiorze Sklepy placówkę która funkcjonuje najkrócej ze wszystkich. 6. Eksportuj plik Sklepy do dowolnego katalogu na dysku w formacie csv (czyli oddzielany przecinaki) a następnie ponownie importuj ten plik do biblioteki WORK. 23
Enhanced Edytor Do pisania programów w języku 4GL istotne jest dodatkowe okno: Enhanced Editor. - Jest to edytor programisty. - Pozwala na sprawdzanie poprawności p składni pisanego programu. - Poszczególne bloki programów są oddzielone linią poprzeczną. - Można mieć otwarte wiele okien jednocześnie. - Umożliwia kolorowanie kodu, ułatwiając kontrolę pisanego kodu. - Można używać kolorów domyślnych lub ustawić samodzielnie. - Można przypisać klawiszom funkcyjnym powtarzających się fragmentów kodu i korzystania ze skrótów. 24
Enhanced Edytor Ustawienia opcji Enhanced Edytora: 1. Należy skonfigurować SAS a tak aby przy uruchamianiu otwierał się Enhanced Edytor domyślnie zamiast zwykłego Edytora. 2. Wybrać opcję Menu:Narzędzia:Opcje:Preferncje i uaktywnić zakładkę Edycja następnie ustawić opcje: - Tryb pracy z edytorem (wstawianie, nadpisywanie) - Co ile minut kod jest zapisywany automatycznie (tmp PGM.ASV) - Używanie klawiszy nawigacyjnych ( strzałek ) do zaznaczania/odznaczania kodu - Wybranie Enhanced Edytora jako domyślnego. 25
Enhanced Edytor W przypadku zamknięcia Edytora można wywołać okienko z Menu:Widok:Enhanced Edytor. Poszczególne elementy kodu są podświetlane innym kolorem. Można rozróżnić fragment kodu który jest instrukcją, wartością zmiennej czy też komentarzem. Znaki + - pozwalają na rozwinięcie lub zwinięcie danego fragmentu kodu: Symbol * mówi o konieczności zapisu Po zapisaniu zawartości Enhaced Editora w postaci pliku (opcja Menu:Plik:Zapisz jako w nagłówku pojawi się nazwa pliku. Dowolna modyfikacja kodu powoduje pojawienie się * czyli wymaga zapisu. 26
Enhanced Edytor Kolory kodu mogą być zmienione i zdefiniowane przez użytkownika. W opcji Menu:Narzędzia:Opcje:Enhanced Editor można zdefiniować opcje w dwóch zakładkach: zakładka: Ogólne Zmiana wcięć tabulatora, Pokazywanie numerów wierszy Dezaktywacja funkcji + i (zwijanie/rozwijanie) Dezaktywacja automatycznie tworzonych akapitów Uruchomienie automatycznego czyszczenia wykonanego kodu. 27
Enhanced Edytor Zakładka: Wygląd W zakładce tej można zdefiniować swoje kolory do określania fragmentów kodu i zachować (Zapisz jako) albowrócić do podstawowych ustawień (Domyślny) 28
Definiowanie skrótów W skrócie można zapisać fragment kodu używany często. Aby zdefiniować skrót należy: 1. Menu:Narzędzia:Dodaj skrót 2. W polu Skrót należy podać skrót który będzie wywoływał fragment kodu zapisany w polu: Tekst wstawiany w miejsce skrótu 3. Wybrać przycisk OK. 4. W oknie Edytora należy wpisać skrót i podświetli się podpowiedź 5. Naciskając Enter tekst zostanie wpisany do edytora. Skrót Tekst komendy Podpowiedź 29
Definiowanie makr Inna metodą ą tworzenia skrótów jest zapisanie fragmentu kodu lub czynności w formie makra które może być później wywołane w dowolnej chwili. 1. Menu:Narzędzia:Makra klawiaturowe:rejestruj nowe makro 2. Od tego momentu wszystko co zostanie zapisane w edytorze będzie rejetrowane jako nowe makro 3. Zakończenie rejestracji poprzez Menu:Narzędzia:Makra klawiaturowe:zakończ rejestrację 4. Pojawi się okno w którym należy podać nazwę zarejestrowanego makra (1) i ew. podać skrót klawiszowy wybierając opcję Klawisze (2) 1 2 30
skróty klawiszowe Zdefiniowane skróty klawiszowe dostępne są w opcji Menu:Narzędzia:Opcje:Klawisze Enhanced Editora 31
skróty klawiszowe Aby dodać nowy skrót klawiszowy, należy: 1. Wybrać z listy kategorię np. Data/Czas 2. Wybrać przycisk: przypisz klawisze 3. Wybrać w liście ścepolecenia oece pozycję np: Wstaw bieżącą datę i godzinę 4. W polu Wciśnij nowy skrót klawiszowy, zdefiniować i ć kombinacje klawiszy np. Alt+Ctrl+D (naciskając kombinację tych klawiszy) i zatwierdzić przyciskiem Przypisz 5. Zatwierdzić OK. i wyjść Zamknij. 32
Wykonanie programu Wykonanie programu następują tak jak w przypadku prostego edytora za pomocą komendy Submit lub wybierając opcję z Menu:Uruchom:Przekaż lub wybierając ikonkę z paska narzędzi: Jeśli wykonanie prostego programu np. proc print data=dane.sklepy; run; jest prawidłowe, wówczas automatycznie otworzy się okno Wynik z zawartością zbioru Sklepy a w oknie LOG pojawi się informacja: 1 proc print data=dane.sklepy; 2 run; UWAGA: Wczytano 110 obserwacji ze zbioru DANE.SKLEPY. UWAGA: PROCEDURE PRINT użyto (całkowity czas przetwarzania): czasu rzeczywistego 1.70 sek. czasu cpu 0.07 sek. 33
Przywołanie uprzednio wykonanego programu Można przywołać ostatnio wykonany program komendą recall wpisując tą komendę w pasku komend. 34
Ćwiczenie nr 2 1. Przypisać skrót klawiszowy funkcja: clear do klawisza alt+c 2. Stworzyć makro pozwalające na powtarzanie czynności: przypisanie biblioteki nowa do ścieżki dostępu do zbioru GERMAN z wykorzystaniem instrukcji LIBNAME 3. Uruchomić program wykonany ostatnio 35