Karol Karasiewicz www.karasiewicz.azpl Importowanie danych z Excela Poradnik dla studentów kursu Zadanie Zbadano wiek, wzrost i wagę 1000 studentów trzech kierunków. Dane zapisane są w pliku BMI.XLS o strukturze podobnej do pokazanej na przykładzie. Należy je zaimportować i stworzyć dobrze opisaną bazę danych. Rozwiązanie Całe zadanie oczywiście możesz wykonać przy użyciu prostych komend SYNTAX a. Tym razem jednak będzie standardowo przy użyciu poleceń klikanych w menu Drop-Down. 1) Pierwszym krokiem jest otworzenie danych. W menu File (Plik) wybierz polecenie Open (otwórz) Data (Dane). 1
2) Następnie w otwartym oknie odnajdź folder, w którym zapisane są Twoje dane np. Moje dokumenty, 3) W polu File Type (Pliki typu) wybierz format Excela, 4) A w głównym polu okna danych zobaczysz plik o nazwie i rozszerzeniu XLS, o który Ci chodzi. W naszym przykładzie jest to BMI.XLS 5) Wystarczy teraz wskazać jedynie plik, a następnie kliknąć przycisk Open (Otwórz), 6) Otworzy się kreator importu danych z Excela, który mniej więcej wygląda następująco: 2
7) W oknie tym możesz zażądać odczyt nazw zmiennych z pierwszego wiersza arkusza (gdy odznaczone, kolejne zmienne dostaną takie nazwy, jak nazwy kolumn w Excelu), 8) Możesz wybrać na rozwijalnej liście arkusz skoroszytu, z którego chcesz importować dane, 9) A także wskazać zakres danych do zaimportowania (gdy pominięte, importowane są dane z całego arkusza zgodnie z zakresem opisanym w polu powyżej) 10) Aby zaimportować kliknij OK, plik zostanie automatycznie zaimportowany do SPSS i otwarty w postaci Data Editor. 11) Na dole okna (lewy dolny róg) są dwie zakładki DataView i VariableView, aktywna jest zazwyczaj zakładka DataView pokazująca widok arkusza danych, jak w Excelu, gdy aktywujesz zakładkę VariableView zobaczysz listę zmiennych i ich właściwości, które można też edytować 3
12) Zaczynając od lewej masz następujące kolumny: a) NAME (Nazwa) zawierająca nazwę zmiennej (nazwami SPSS posługuje się w obliczeniach i analizach), Pamiętaj o zasadach tworzenia nazw zmiennych najlepiej żadnych spacji, czy znaków specjalnych (poza podkreśleniem _ ) b) TYPE (Typ danych) zawiera typ danych dla zmiennej, domyślnie jest to typ liczbowy (numeric), może być również tekstowy (String), dziesiętny (Comma) itd. c) WIDTH i DECIMALS (Długość i Dziesiętne) zawierają ustawiania długości zmiennej oraz liczby miejsc dziesiętnych (tylko dla zmiennych liczbowych i przecinkowych oraz walutowych), d) LABEL (Etykieta) zawiera długą nazwę zmiennej, SPSS ją jedynie podaje w tabelach lub raportach dla Twojego ułatwienia, nazwa może być długa i dowolna, ale nie dłuższa niż 255 znaków, O ile zmienna często nazywa się co najmniej dziwnie (Np. BMI) natomiast etykieta może dużo wyjaśnić i przetłumaczyć nazwę na polski (Np. Wskaźnik masy ciała do wzrostu; Body Mass Index), e) VALUES (Wartości) ustawia etykiety dla wartości zmiennych, np. można w skali Likerta 1 oznacza B. Mało, 5 B.Dużo itd. Wystarczy kliknąć i zdefiniować niemożliwe dla danych tekstowych, f) MISSING (Braki) pozwala ustawić określone dane, jako braki danych (nie są wówczas liczone do statystyk, np. nie chcemy, żeby SPSS liczył osoby o niezdecydowanej postawie w skali Likerta (o wartości 3) wystarczy zdefiniować tę wartość, jako MISSING, g) MEASURE (Poziom) definiuje skalę pomiarową zmiennej, i) NOMINAL (Nominalna) nominalna (domyślna dla danych tekstowych), 4
ii) ORDINAL (Porządkowa) dla danych o charakterze porządkowym i niektórych danych przedziałowych, iii) SCALE (Skala) dla danych ilorazowych i przedziałowych (dla nich dostępne są wszystkie metody analizy statystycznej h) COLUMNS (Kolumny) i ALIGN (Wyrównanie) pozwalają ustawić wygląd zmiennej w DataView szerokość kolumny (liczona w znakach) i wyrównanie. 13) Popraw odpowiednie wartości (np. ID powinno być mierzone na skali porządkowej) i pouzupełniaj etykiety zmiennych dla zaimportowanego zbioru, 14) Zwróć uwagę, że dane tekstowe zaimportowały się w postaci tekstowej nie będą się nadawały do wielu analiz, dlatego warto je przekodować do zmiennej liczbowej. O tym, jak to zrobić w pliku o przekształceniach zmiennych. 15) Teraz już jedynie pozostaje Ci zapisać plik w postaci zbioru danych SPSS, aby to zrobić wybierz polecenie File (Plik) --> Save (Zapisz) i wskaż w otwartym kreatorze zapisu plików lokalizację oraz nazwę, pod jaką chcesz plik zapisać. Drugi sposób rozwiązania Tym raze sposób z wykorzystaniem pliku poleceń SYNTAX a. Oczywiście jest to w moim przekonaniu sposób prostszy i bardziej ergonomiczny, ale wiem niestety, że na tę sprawę spojrzenia są różne. Aby zaimportować plik danych z Excela trzeba w SPSS wykonać następujące czynności: 1) W menu File (Plik) wybierz New (Nowy) --> Syntax (Polecenia), 5
2) Otworzy się program Syntax Editor (Edytor Poleceń), który z gruntu wygladem przypomina notatnik systemu Windows, 3) W tym oknie możesz wpisywać różne polecenia zgodnie z zasadami pisania poleceń SYNTAX, ogólne zasady są niezwykle proste: a) Każde polecenie zaczyna się od zdefiniowanego w programie SPSS słowa kluczowego, a kończy się kropką, b) Wewnątrz jednego polecenia (poza dwoma wyjątkami) nie są możliwe do wprowadzania inne polecenia, c) Komentarze (które generalnie służą bardziej osobie programisty i statystyka niż komputerowi i SPSS-owi) są możliwe po wprowadzeniu słowa kluczowego COMMENT lub symbolu gwiazdki (*) na początku linii, koniecznie komentarz należy zakończyć kropką, d) Dobrym zwyczajem jest rozpoczynanie polecenia (wpisywanie słowa kluczowego) od początku linii, natomiast rozpoczynanie linii wyrażającej opcje tego polecenia od wcięcia np. zrobionego tabulatorem lub kilku spacjami, 4) Polecenie importu danych z Excela zaczyna się od słów kluczowych GET DATA, zatem należy je wpisać w jednej linii, jak poniżej, 5) Wielkość liter nie ma znaczenia, najczęściej programiści pilnują się zasady, że słowa kluczowe i opcje są pisane WIELKIMI literami, natomiast nazwy zmiennych i wartości parametrów literami małymi, to jednak nie jest standard, a jedynie dobra maniera, 6
6) Aby dowiedzieć się, jakie opcje są dostępne dla danego słowa kluczowego i w jaki sposób wprowadzać dla tych opcji parametry ustaw kursor w linii danego słowa kluczowego i wciśnij przycisk F1, zostanie otwarte okno pomocy edytora poleceń, a w oknie tym zostanie wyświetlona pomoc na temat struktury polecenia, które wpisujesz 7) Dla polecenia GET DATA są dostępne następujące opcje wraz z odpowiednimi parametrami pozwalającymi importować dane z Excela: a) /TYPE = XLS, opcja /TYPE pozwala określić typ importowanego pliku, parametr XLS wskazuje, że jest to plik typu Excel, b) /FILE = PLIK.XLS, określa nazwę pliku (wraz z rozszerzeniem XLS), gdzie zlokalizowane są dane, wielkość liter w nazwie pliku nie ma znaczenia; Pamiętaj jedynie, żeby zawsze nazwę pliku zawrzeć w cudzysłowach, 7
c) /SHEET = INDEX 1 lub /SHEET = NAME Arkusz1, gdzie określa się lub to numer arkusza (INDEX) lub to jego nazwę (UWAGA!!! Wielkość liter w nazwie arkusza ma znaczenie); Pamiętaj, żeby nazwę arkusza danych zawszeć w cudzysłowie, d) /CELLRANGE = FULL lub CELLRANGE = B10:AC100, gdzie określasz, z jakiego obszaru arkusza danych mają być zaimportowane dane; Jeśli zastosujesz parametr FULL, importowane będą wszystkie kolumny i wiersze z arkusza, w których znajdują się jakiekolwiek dane, jeśli wskażesz obszar do importu będą importowane dane tylko z tego fragmentu arkusza, e) /READNAMES = ON lub /READNAMES = OFF, gdzie określasz, czy nazwy zmiennych znajdują się w pierwszym wierszu importowanego obszaru danych, jeśli nie zmienne w SPSS otrzymają nazwy takie, jak nazwa kolumny w Excelu, f) Żeby zaimportować plik danych BMI.XLS, gdzie dane znajdują się w pierwszym arkuszu, gdzie nazwy zmiennych są w pierwszym wierszu, gdzie trzeba zaimportować cały arkusz należy wprowadzić proste polecenie SYNTAX: GET DATA /TYPE = XL /FILE = BMI.XLS /SHEET = INDEX 1 /CELLRANGE = FULL /READNAMES = ON. 8) Wpisz polecenie, zaznacz je, kliknij prawym klawiszem myszy na zaznaczony obszar i wybierz z otwartego menu skrótów polecenie Run Current (Uruchom to) 8
9) SPSS zaimportuje automatycznie dane ze wskazanego obszaru, a następnie otworzy zbiór danych i pokaże go w pierwszym oknie. 10) Żeby teraz przekształcić zmienne tekstowe (SEX i STUDY) na zmienne numeryczne (które łatwiej później będzie wprowadzać do analiz wpisz w edytorze SYNTAX a polecenie, w którym określisz zmienne do przekształcenia (opcja /VARS), nazwy zmiennych po przekształceniu (opcja /INTO) oraz sposób zamiany pustych komórek na braki danych (opcja /BLANK), a także opcję /GROUP, która nakazuje SPSS-owi posortowanie wartości w kolejności alfabetycznej i nadanie im kolejnych wartości (np. A=1; B=2; C=3), w innym wypadku wartości liczbowe będą nadawane w dosć przypadkowej kolejności (np. A=1; B=3; C=2). AUTORECODE /VARS = SEX STUDY /INTO = PŁEĆ KIERUNEK /BLANK = MISS /GROUP. 11) Uruchom polecenie zaznaczając je i klikając prawym klawiszem myszy oraz wybierając opcję Run Current (Uruchom to). 9
12) Zobacz, że w zbiorze danych zostały wygenerowane dwie nowe zmienne o nazwie PŁEĆ i KIERUNEK, które zawierają przekształcone dane ze zmiennych SEX i STUDY, dane już są zaetykietowane, więc łatwo jest rozpoznać, która zmienna jest czym, 13) Ostatnią rzeczą, którą zawsze warto wykonać jest nadanie etykiet zmiennym oraz zdefiniowanie poziomu pomiaru tych zmiennych, żeby to wykonać wpisz słowa kluczowe: a) VAR LAB etykietowanie zmiennych, b) VAR LEV definiowanie poziomu pomiaru zmiennych, 14) Etykiety zmiennych należy zawsze wpisywać w cudzysłowie, natomiast poziom pomiaru zmiennej w nawiasie 10
VAR LAB ID 'IDENTYFIKATOR OBSERWACJI' /PŁEĆ 'PŁEĆ' /KIERUNEK 'KIERUNEK STUDIÓW' /BMI 'WSKAŹNIK MASY CIAŁA (BODY MASS INDEX)' /WEIGHT 'WAGA W KG' /HEIGHT 'WZROST W CM'. VAR LEV ID (ORDINAL) /PŁEĆ KIERUNEK (NOMINAL) /WEIGHT HEIGHT BMI (SCALE). 15) Jak widzisz najpierw wpisujesz (po znaku / ) nazwę zmiennej, potem jej parametr; Albo jest to etykieta zmiennej wpisana w cudzysłowie, albo jej poziom pomiaru wpisany w nawiasie. Żeby zobaczyć efekty swoich działań, otwórz okno edytora danych i wybierz zakładkę VARIABLE VIEW (Zmienne) 16) Ostatnią już czynnością jest zapisanie pliku w postaci zbioru danych SPSS, aby to zrobić wpisz polecenie SAVE OUTFILE i uruchom je SAVE OUTFILE = BMI.SAV /KEEP = ID PŁEĆ KIERUNEK WEIGHT HEIGHT BMI. 11
17) W poleceniu tym po pierwsze określasz nazwę pliku do zapisu (BMI.SAV); Pamiętaj wpisać ją w cudzysłowie! Po drugie określasz, które zmienne powinny być zapisane i w jakiej kolejności, a więc zapisywane są zmienne ID (identyfikator obserwacji), PŁEĆ (Płeć), KIERUNEK (Kierunek studiów), WEIGHT (Waga w kg), HEIGHT (Wzrost w cm) oraz BMI (Wskaźnik masy ciała (Body Mass Index)). Opcja /KEEP nie jest konieczna, gdy ją pominiesz zostaną zapisane wszystkie zmienne w kolejności, w której są one w aktualnym zbiorze danych. No i to wszystko. Plik SYNTAX a również możesz zapisać sobie na dysku. Później, gdyby była taka potrzeba, możesz ponownie go otworzyć i wykorzystać do ponownego zaimportowania pliku danych BMI.XLS lub po niewielkich przekształceniach innego pliku o podobnej strukturze itd. Sądzę, że jeśli ktokolwiek raz spróbował zalet SYNTAX a, nie będzie się już więcej przed nim wzdragał. Plik poleceń jest również dostępny w tym serwisie. Wypróbuj, jakie to proste 12