top 30 sas interview questions
Lista najczęściej zadawanych pytań do wywiadów SAS z odpowiedziami:
W tym artykule przyjrzymy się niektórym podstawowym i zaawansowanym koncepcjom programowania w SAS poprzez najczęściej zadawane pytania i odpowiedzi na rozmowę kwalifikacyjną.
System analizy statystycznej, powszechnie znany jako SAS, jest uważany za zestaw wielu programów, które są zintegrowane i używane do różnych operacji, takich jak zarządzanie danymi, analiza predykcyjna i opisowa, poprawa jakości, analiza biznesowa, tworzenie aplikacji itp.
Duża liczba dostosowywanych komponentów SAS, a także szerokie możliwości programowania razem, wykonują zadania analizy danych i transformacji danych. Może działać w dowolnym systemie operacyjnym (Linux, Windows itp.), Ponieważ jest niezależny od platformy.
Najpopularniejsze pytania i odpowiedzi do wywiadów SAS
No to ruszamy..
Pytanie 1) Wymień funkcje wykonywane przez SAS.
Odpowiedź: SAS (Statistical Analysis System) ma swoje znaczenie w każdej dziedzinie biznesu.
Poniżej wymieniono niektóre z podsumowanych funkcji wykonywanych przez SAS:
- Zarządzanie danymi i zarządzanie projektami
- Magazyn danych
- Badania operacyjne i wsparcie decyzyjne
- Wyszukiwanie informacji i zarządzanie jakością
- Planowanie biznesu
- Analiza statystyczna
P # 2) Jakie są 3 komponenty w programowaniu w SAS?
Odpowiedź: Trzy komponenty programowania w SAS to:
- Sprawozdania
- Zmienne
- Zestaw danych
Q # 3) Wymień reguły składni stosowane w instrukcjach SAS.
Odpowiedź: Program w SAS jest napisany w oknie edytora. Tutaj zawiera serię instrukcji, po których następuje właściwa składnia, w takiej kolejności, aby program SAS-owy mógł ją zrozumieć.
Niektóre z reguł składni, które są przestrzegane w przypadku elementu Statement w SAS, są następujące:
- Koniec każdej instrukcji jest oznaczony średnikiem (;).
- Średnik jest również używany do oddzielania wielu instrukcji, które pojawiają się w jednym wierszu.
- Instrukcje SAS nie uwzględniają wielkości liter i dodatkowych odstępów, zanim instrukcje są automatycznie usuwane.
- Komentarze mogą być dołączane do programu SAS dla wyciągów na dwa różne sposoby:
- Linia zaczynająca się gwiazdką (*) i kończąca się średnikiem (;).
- Linia zaczynająca się ukośnikiem i gwiazdką (/ *), a kończąca się gwiazdką i ukośnikiem (* /).
P # 4) Jakie typy danych zawiera SAS?
Odpowiedź: „Numeryczny” i 'Postać' to dwa typy typów danych, które zawiera program SAS.
P # 5) Jakie są PDV i ich funkcje?
Odpowiedź: Wektor danych programu (PDV) to koncepcja logiczna zdefiniowana jako obszar pamięci, w którym zestaw danych jest budowany przez SAS.
Funkcje PDV są następujące:
- Tworzona jest baza danych zawierająca jedną obserwację naraz.
- Bufor wejściowy do przechowywania danych z pliku zewnętrznego jest tworzony w momencie kompilacji.
- PDV zawiera dwie automatyczne zmienne, mianowicie _N_ (wyświetla liczbę wykonywanych kroków danych) i _ERROR_ (powiadamia o błędzie, który występuje w czasie wykonywania).
P # 6) Co wiesz o zestawie danych SAS?
Odpowiedź: Zestaw danych SAS jest zasadniczo nazywany danymi dostępnymi do analizy w programie SAS. Zbiór danych SAS jest również nazywany tabelą danych SAS.
Tabela danych SAS składa się z dwóch części:
- Kolumny zmiennych
- Rzędy obserwacji
Przydatne informacje o zestawie danych SAS można podsumować w następujący sposób:
- SAS Dataset może czytać, a także ma wbudowane źródła danych do użytku, takie jak Excel, Access itp.
- Zestaw danych, który jest używany tylko w bieżącym przebiegu sesji i odrzucany po zakończeniu sesji, jest nazywany tymczasowym zestawem danych.
- Zestaw danych, który jest przechowywany do wykorzystania w przyszłej sesji, jest również nazywany stałym zestawem danych.
- Za pomocą tej ścieżki można uzyskać dostęp do wbudowanego zestawu danych Biblioteki -> Moje biblioteki -> SASHELP.
P # 7) Wyjaśnij, dlaczego podwójne końcowe @@ jest używane w instrukcjach wejściowych?
Odpowiedź: Podczas iteracji kroku danych, w tym podwójne końcowe @@ w instrukcjach Input, oznacza, że SAS powinien przechowywać bieżący rekord w celu wykonania następnej instrukcji Input, zamiast przełączać się na nowy rekord.
P # 8) Wyjaśnij różnicę między opcjami NODUP i NODUPKEY?
Odpowiedź: Aby usunąć zduplikowane wartości z tabeli, SORTOWANIE PROC jest zasadniczo podzielone na dwie kategorie:
- NODUP
- NODUPKEY
Różnicę między tymi dwiema opcjami można zobaczyć poniżej:
NODUPKEY | NODUP |
---|---|
Porównuje tylko zmienną BY obecną w zbiorze danych. | Porównuje wszystkie zmienne obecne w zbiorze danych. |
Usuwa zduplikowane opcje dla wartości zmiennych wymienionych w instrukcji BY. | Identyfikuje i eliminuje zduplikowane obserwacje. |
Składnia: PROC SORT DATA = odczyt NODUPKEY; BY nazwa zmiennej; BIEGAĆ; | Składnia: PROC SORT DATA = odczyt NODUP; BY nazwa zmiennej; BIEGAĆ; |
P # 9) Które polecenie jest używane do sortowania w programie SAS?
Odpowiedź: Polecenie PROC SORT służy do sortowania, czy to na jednej zmiennej, czy na wielu zmiennych. To polecenie jest wykonywane na zbiorze danych, w którym nowy zestaw danych jest tworzony w wyniku sortowania, ale oryginalny zestaw danych pozostaje niezmieniony.
Składnia:
PROC SORT DATA=original OUT=Sorted; BY variable;
Gdzie,
„Oryginał” odnosi się do oryginalnego zbioru danych
„Posortowane” odnosi się do wyniku jako posortowanego zbioru danych
„Zmienna” odnosi się do kolumny, w której odbywa się sortowanie.
Sortowanie można przeprowadzić zarówno w porządku rosnącym, jak i malejącym.
Aby zbiór danych był wyświetlany w porządku malejącym, słowo kluczowe „Malejąco” jest używane w instrukcji BY z nazwą kolumny, na której ma zostać przeprowadzone sortowanie.
PROC SORT DATA=original OUT=Sorted; BY DESCENDING variable
P # 10) Wyjaśnij różnicę między Informatem i Format na przykładzie.
Odpowiedź: Różnicę między Informatem a Format można wyjaśnić następująco:
Dowiedz się więcej | Format |
---|---|
Wskaż SAS, jak odczytywać dane do zmiennej SAS. | Wskaż SAS, jak wyświetlać wartości w zmiennej. |
Są one używane do odczytywania danych lub pobierania danych wejściowych z plików zewnętrznych. | Są one używane do zapisywania danych. |
Q # 11) Rozróżnij INPUT i INFILE.
Odpowiedź: Dołączenie instrukcji INFILE do programowania w SAS identyfikuje zewnętrzny plik, który składa się z danych, podczas gdy włączenie instrukcji INPUT w programowaniu w SAS opisuje używane zmienne.
Składnia INFILE:
INFILE ‘filename’;
Składnia INPUT:
INPUT ‘varname1’ ‘varname2’;
P # 12) Wyjaśnij zastosowanie druku PROC i treści PROC?
Odpowiedź: Krok PROC programu SAS służy do wywoływania wbudowanych procedur do analizy danych w zestawie danych.
Druk PROC: Zapewnia poprawny odczyt danych zawartych w zbiorze danych.
Zawartość PROC: Wyświetla informacje o zestawie danych SAS.
Q # 13) Wyjaśnij DATA_NULL_?
Odpowiedź: Jak nazwa określa, DATA_NULL_ jest krokiem danych, który w rzeczywistości nie tworzy żadnego zestawu danych.
To jest używane do:
- Tworzenie makrozmiennych.
- Zapisywanie danych wyjściowych bez żadnego zestawu danych.
P # 14) W jaki sposób zmienna znakowa jest konwertowana na zmienną numeryczną i odwrotnie?
Odpowiedź: W programowaniu w SAS pojawia się wiele zadań, w których wartość znakowa jest konwertowana na wartość liczbową iw ten sam sposób wartość liczbowa jest konwertowana na wartość znakową.
POŁOŻYĆ() służy do zamiany liczb na znak. W takim przypadku format źródłowy i typ zmiennej źródłowej muszą być zawsze podobne.
Przykład:
char_var= PUT( num_var, 6.);
INPUT () służy do konwersji znaku na numeryczny. W takim przypadku typ zmiennej źródłowej musi zawsze być zmiennym znakowym.
Przykład:
Num_var= INPUT(char_var,2.0);
P # 15) Jaki jest cel _CHARACTER_ i _NUMERIC_?
Odpowiedź: W obecnym zbiorze danych
_POSTAĆ_ definiuje wszystkie aktualnie zdefiniowane zmienne znakowe.
Przykład : Aby uwzględnić wszystkie zmienne znakowe w PROC MEANS, używane są następujące instrukcje:
PROC MEANS; Var_character_; Run;
_NUMERIC_ definiuje wszystkie aktualnie zdefiniowane zmienne numeryczne.
Przykład: Aby uwzględnić wszystkie zmienne numeryczne w PROC MEANS, używane są następujące instrukcje:
PROC MEANS; Var_numeric_; Run;
P # 16) Jakie polecenia są używane w przypadku włączania lub wykluczania określonych zmiennych w zestawie danych?
Odpowiedź: W tym celu używane są opcje DROP, KEEP i data set.
Zmienna, którą chcemy usunąć z kroku danych, jest określona w instrukcji DROP.
Zmienna, którą chcemy zachować z kroku danych, jest określona w instrukcji KEEP.
P # 17) Rozróżnij ŚREDNIE PROC i PODSUMOWANIE PROC.
Odpowiedź: Różnicę między PROC MEANS a PROC SUMMARY można rozumieć następująco:
ŚRODKI PROC | PODSUMOWANIE PROCESU |
---|---|
Ta procedura domyślnie tworzy drukowany raport w oknie WYJŚCIE. | Ta procedura obejmuje PRINT w instrukcji, aby wygenerować wydrukowany raport. |
ŚRODKI PROC. Domyślnie przyjmują wszystkie zmienne numeryczne w analizie. | PODSUMOWANIE PROCESU przejmuje zmienne do analizy statystycznej opisanej w instrukcji VAR. |
Q # 18) Wyjaśnij cel funkcji SUBSTR w programowaniu w SAS.
Odpowiedź: W programowaniu w SAS, ilekroć program wymaga abstrakcji podłańcucha, funkcja SUBSTR jest używana w przypadku zmiennej znakowej.
Po określeniu pozycji początkowej i długości ta funkcja jest używana do abstrakcji ciągu znaków.
Składnia: SUBSTR (zmienna_znak; początek; długość);
Q # 19) Wymień i opisz w skrócie kilka funkcji znakowych SAS, które są używane do czyszczenia danych.
Odpowiedź: Kilka funkcji znakowych SAS, które są używane do czyszczenia danych, wymieniono poniżej:
- Kompresuj (ciąg_znaków) funkcja służy do usuwania spacji lub niektórych określonych znaków z podanego ciągu.
- TRIM (str) Funkcja służy do usuwania końcowych spacji z danego ciągu.
- LOWCASE (ciąg_znaków) funkcja służy do konwersji wszystkich znaków w danym ciągu na małe litery.
- UPCASE (ciąg_znaków) funkcja służy do zamiany wszystkich znaków w danym ciągu na wielkie litery.
- COMPBL (str) funkcja służy do konwersji wielu pustych znaków na jeden pusty.
P # 20) Wymień kilka sposobów, za pomocą których „przeszukiwanie tabeli” jest wykonywane w programowaniu w SAS.
Odpowiedź: W programowaniu w SAS wartości wyszukiwania w tabeli można przechowywać na następujące sposoby:
- Kod
- Szyk
- Hash obiekt
- Format
- Zestaw danych
Następujące techniki są używane do wykonywania „wyszukiwania tabeli” odpowiednio w SAS:
- SELECT / WHEN lub IF / THEN
- Wartość indeksu tablicy
- Hash wartość klucza obiektu
- Instrukcja FORMAT, funkcja PUT
- Scal, dołącz, KEY = Option
Zobaczmy przykład, który pokazuje sposób, w jaki „Kod” przeprowadza wyszukiwanie w tabeli przy użyciu instrukcji „JEŻELI / TO”:
data location; set myinfo; if AreaCode='226' then Location='Ontario, Canada'; else if AreaCode='212' then Location='New York, NY'; else Location='Unknown'; run;
P # 21) Rozróżnij funkcje CEIL i FLOOR.
Odpowiedź: funkcja CEIL służy do obcinania wartości liczbowych, w przypadku gdy wyświetla wynik jako najmniejszą liczbę całkowitą. Przez najmniejszą liczbę całkowitą oznacza tutaj, że wartość całkowita jest większa niż / równa argumentowi.
Przykład: CEIL (12,85) wyświetli wynik jako 13.
PODŁOGA służy do obcinania wartości liczbowych, gdy wyświetla dane wyjściowe jako największą liczbę całkowitą. „Największa liczba całkowita” oznacza tutaj, że wartość całkowita jest mniejsza niż / równa argumentowi.
Przykład: FLOOR (12.85) wyświetli wyjście jako 12.
P # 22) W jaki sposób można tworzyć makrozmienne w programowaniu w SAS?
Odpowiedź: Cóż, można użyć wielu różnych technik do tworzenia makrozmiennych w programowaniu w SAS.
Poniżej wymieniono pięć najczęściej używanych metod:
- % LET oświadczenie
- Parametry makra (nazwane i pozycyjne)
- Instrukcja% DO (iteracyjna)
- INTO w PROC SQL
- Procedura CALL SYMPUTX
Q # 23) Wyjaśnij cel instrukcji RETAIN.
Odpowiedź: Ponieważ znaczenie słowa „RETAIN” oznacza zachowanie raz przypisanej wartości, cel instrukcji RETAIN jest taki sam w programowaniu SAS, jak to sugeruje.
W programie SAS-owym, gdy wymagane jest przejście z bieżącej iteracji do następnego kroku danych, wówczas instrukcja RETAIN mówi SAS-owi, aby zachował wartości zamiast ustawiać je na brakujące.
Przykład: Wydrukujmy program, który wyświetli wyjściową wartość „z” zaczynając od 1, używając instrukcji RETAIN.
data abc; set xyz; RETAIN z 0; z = z + 1; run;
Q # 24) Które polecenie służy do zapisywania dzienników w pliku zewnętrznym?
Odpowiedź: PROCES DRUKOWANY Polecenie służy do zapisywania logów w zewnętrznym pliku.
Skrypty do rozmów kwalifikacyjnych i odpowiedzi dla doświadczonych
Przykład:
PROC PRINTTO log='C:UsersabcDownloadsLOG11.txt' new; run;
Q # 25) Wymień kilka typowych błędów, które są zwykle popełniane w programowaniu w SAS.
Odpowiedź: Poniżej wymieniono niektóre z typowych błędów, które są zwykle popełniane, zwłaszcza gdy jesteś nowy w tym języku programowania.
- Podstawowa składnia zawiera średnik na końcu każdej instrukcji, a brak średnika jest najczęstszym błędem.
- Po przesłaniu programu pomijasz sprawdzanie logów.
- Błędy w komentowaniu, takie jak niestosowanie komentarzy w razie potrzeby lub używanie komentarzy w niewłaściwy sposób.
- Niewłaściwe metody debugowania.
Q # 26) Wspomnij o opcjach systemu SAS do debugowania makr SAS.
Odpowiedź: Aby pomóc w śledzeniu kodu makra, a także kodu SAS generowanego przez makra, można użyć niektórych opcji systemowych.
Oni są:
- MLOGIC
- MPRINT
- SYMBOLIKA
Wiadomość, która zostanie wygenerowana przez te opcje systemu, można zobaczyć w dzienniku SAS.
Q # 27) Rozróżnij funkcje SAS od procedur SAS.
Odpowiedź: Główne różnice można wykryć / zrozumieć, wyjaśniając przypadek zarówno dla funkcji, jak i procedur SAS.
Walizka:
Dla Funkcjonować , wartość argumentu jest dostarczana lub powiedzmy, że brana jest do obliczenia w odniesieniu do obserwacji wspomnianej w instrukcji programu, podczas gdy w przypadku Procedura , oczekuje się, że każda obserwacja będzie miała tylko jedną zmienną, za pomocą której wykonywane są obliczenia, jak wspomniano w poniższym przykładzie.
Rozumiemy to na przykładach:
data average; set temp; avgtemp = mean( of T1 – T24 ); run;
W powyższych przykładach argumenty przekazane do funkcji średniej są brane do obliczeń jako obserwacja.
proc sort; by month; run; proc means; by month; var avgtemp; run;
W powyższym przykładzie funkcja Proc mean oblicza średnią temperaturę dla jednego argumentu, który jest przekazywany jako obserwacja, tj. Według miesiąca.
P # 28) Co wiesz o SYMPUT i SYMGET?
Odpowiedź: Poniżej wymieniono główne różnice między nimi.
SYMPUT służy do przechowywania wartości zestawu danych w makrozmiennej, natomiast SYMGET służy do pobierania wartości z makrozmiennej do zestawu danych.
Q # 29) Wyjaśnij specjalne ograniczniki danych wejściowych używane w programowaniu w SAS.
Odpowiedź: Specjalne ograniczniki wejściowe używane w programowaniu SAS to:
- DLM
- DSD
Są one używane w wyrażeniu „INFILE”, a DSD ma funkcję ignorowania separatorów, które pojawiają się w cudzysłowie.
P # 30) Która funkcja służy do liczenia odstępów czasu między dwiema datami SAS?
Odpowiedź: Funkcja Interval INTCK służy do zliczania odstępów czasu między dwiema podanymi datami SAS.
Składnia:
INTCK(interval,start-of-period,end-of-period)
Wniosek
Do tej pory widzieliśmy wiele pytań i odpowiedzi, które pozwoliłyby ci dobrze zrozumieć koncepcje programowania w SAS, a także dałyby pojęcie o naturze pytań zadawanych w wywiadach z SAS.
Cóż, jeśli dopiero zaczynasz przygodę z programowaniem w SAS, znajomość niektórych technologii programowania komputerowego i znajomość języka SQL (Structured Query Language) będzie dla Ciebie dodatkowym atutem w szybkim zrozumieniu i nauce SAS.
Mam nadzieję, że z pewnością jesteś gotów stawić czoła każdej rozmowie z SAS !!