(1). Zanim dostaniesz zbiór SPSS-a...

forum poświęcone pracom (lic./mgr), kolejnym etapom pisania pracy, dyskusjom na ich temat, zbieraniu informacji na temat źródeł i planów pracy oraz zbieraniu i analizowaniu danych przy użyciu SPSS, EXCEL

Moderator: FrancisBegbie

ODPOWIEDZ
Ritter
*****
Posty: 610
Rejestracja: pn cze 25, 2007 2:00 am
Lokalizacja: Warszawa
Kontakt:

(1). Zanim dostaniesz zbiór SPSS-a...

Post autor: Ritter »

czyli jak najszybciej i najprościej przerobić papierowe ankiety do formy elektronicznej. :wink:

Jeśli mamy tylko kilka-kilkanaście ankiet można je wpisać bezpośrednio do pliku SPSS-a albo do Excel'a. Od wersji 8.0 (na starszych nie pracowałem) można otworzyć plik (odpowiednio sformatowany) Excel'a bezpośrednio w SPSS-ie.
Jednak jeśli ilość ankiet idzie w dziesiątki, warto napisać sobie prosty skrypt w jednym z popularnych języków do tego przeznaczonych. Obecnie najbardziej rozpowszechniony jest język DGS, którego autorem jest Michał Trybulec. Nie potrzeba nawet specjalnego edytora (DGStudio), bo wszystko można napisać w notatniku (lub jakimkolwiek edytorze, w którym można wyłączyć formatowanie - WORD w tym wypadku jest nieużyteczny :wink: ).

Do uruchomienia raz napisanego skryptu służy program DGStation, który wg moich ostatnich informacji Autor udostępnia za darmo.

Słowa kluczowe:

AUTO
Ogólna postać definicji jest następująca: słowo kluczowe AUTO, znak równości i liczba albo napis ograniczony z obu stron znakiem ' (apostrof) albo odwołanie za pomocą etykiety do jednej z poprzednich instrukcji. Na przykład:

AUTO=99
AUTO='99'
AUTO='nie dotyczy'
AUTO=^pyt1


BEEP / BIP
Pewne pola rekordu mogą zostać wyróżnione w ten sposób, że podczas wprowadzania danych przy wejściu kursora na wyróżnione pole emitowany jest charakterystyczny krótki dźwięk. Dźwięk ten różni się od sygnału oznaczającego pomyłkę i służy zwróceniu uwagi użytkownika. Taki sposób sygnalizacji może być pomocny przy bezwzrokowym wprowadzaniu danych - oznaczając na przykład początek nowej strony ankiety. Sygnał dźwiękowy generowany jest wyłącznie dla pól jeszcze nie wypełnionych (podczas poprawiania i przeglądania nie występuje). Opcję tę można wyłączać i ponownie przywracać w czasie edycji wybierając menu Opcje | Dźwięk. Aby wyróżnić w ten sposób pole należy w jego definicji umieścić słowo kluczowe BEEP.

COMMENT / KOME
Drugim rodzajem instrukcji jest instrukcja komentarza, pozwalająca wyświetlić na ekranie wprowadzania danych dowolny tekst, informujący kodera np. o treści kolejnych pytań czy specyficznych warunkach ich kodowania.
Instrukcja musi zawierać słowo kluczowe COMMENT, po którym następuje znak równości i określenie treści komentarza. Na przykład:

COMMENT='Następne pytania nie mogą zawierać braków danych'

CONST / STAL
Jeśli w definicji pola pojawi się słowo kluczowe CONST, pole to zostanie potraktowane jako pole stałe - będzie wypełniane samoczynnie wartością automatyczną.

Uwaga: identyfikator rekordu nie może być polem stałym.

GROUP / GRUP
Aby zdefiniować grupę wzajemnie powiązanych pól, które mogą być podczas edycji wypełniane wartościami automatycznymi za pomocą jednego wciśnięcia klawisza (plusa numerycznego), należy w pierwszym polu grupy wpisać sekwencję

GROUP=<nazwaetyk>

w ostatnim zaś

LABEL=<nazwaetyk>

Do grupy należeć będą wszystkie pola począwszy od zawierającego słowo GROUP, a kończąc na wyróżnionym etykietą nazwaetyk.
Ze sposobu definiowania grupy pól wynika, że pola ujęte w grupę muszą stanowić ciągły blok, to znaczy nie mogą być rozdzielone innymi polami. Mogą natomiast wystąpić pomiędzy nimi komentarze i przejścia do nowej strony.

ITEM
W celu zaoszczędzenia pracy przy przygotowywaniu skryptu, istnieje możliwość zdefiniowania przy pomocy jednej instrukcji całego szeregu następujących bezpośrednio po sobie pól, o ile mają one mieć takie same atrybuty. Przypadek ten występuje często dla pytań wieloodpowiedziowych, dla których kilka lub kilkanaście pól kodowych ma tę samą szerokość, ten sam zakres i niewiele różniący się od siebie opis (lewy napis). Należy podkreślić, że zagadnienie to nie ma nic wspólnego z grupami pól tworzonymi za pomocą słowa kluczowego GROUP.
Aby wykorzystać ten mechanizm należy zdefiniować pierwsze pole i umieścić w odpowiadającej mu instrukcji słowo kluczowe REPEAT, znak równości i liczbę powtórzeń. Program wygeneruje tyle kolejnych pól, ile wynosi podana liczba (z zakresu od 1 do 999). Każde z tych pól będzie miało ten sam rodzaj, szerokość, zakres, wartość automatyczną i prawy napis. Wszystkie pola znajdą się na tej samej stronie kwestionariusza.

Dla zidentyfikowania poszczególnych pól można zróżnicować w pewnym stopniu ich lewe napisy. Jeśli w treści lewego napisu umieszczony zostanie znak dolara $, to zostanie on dla każdego z pól zamieniony na odpowiadający mu numer. Numer przypisywany pierwszemu z pól objętych jednoczesną definicją można określić pisząc w instrukcji słowo kluczowe ITEM, znak równości i początkowy numer. Pominięcie tego parametru odpowiada przyjęciu wartości 1. Przykładowo, definicje:

LEFT='Pytanie 1.$' WIDTH=1 AUTO=0 RANGE=[0:2] REPEAT=6*
PAGE*
LEFT='Pytanie 1.$' REPEAT=4 ITEM=7*


utworzą 10 pól opatrzonych na ekranie z lewej strony napisami: od "Pytanie 1.1" do "Pytanie 1.10". Pierwsze 6 pól znajdzie się na jednej stronie kwestionariusza, zaś pozostałe 4 na następnie stronie.
W definicji jednoczesnej nie mogą wystąpić słowa kluczowe WHEN oraz RECID. Jeśli wystąpi słowo CONST, to stałe będą wszystkie pola.
Opatrzenie etykietą instrukcji zawierającej REPEAT jest równoważne przypisaniu tej etykiety do ostatniego z definiowanych tą instrukcją pól. Takie rozwiązanie umożliwia utworzenie grupy zawierającej zestaw pól definiowanych jednocześnie. Tak więc instrukcja

LEFT='Pytanie 1.$' REPEAT=6 LABEL=pyt1 GROUP=pyt1*

generując sześć pól wiąże je jednocześnie w grupę.

LABEL / ETYK
Etykieta jest to nazwa (symbol) przypisana konkretnej instrukcji. Etykiety przypisujemy po to, aby w dalszych instrukcjach móc się odwołać do pewnych definicji i ustaleń, które w tej instrukcji zostały wprowadzone.

Postać atrybutu:

LABEL=<napis>

Przykład:

LABEL=Pytanie1 COMMENT='Wpisać tylko zaznaczone kody'*
LEFT='Odp1.' WIDTH=2*
LEFT='Odp2.'*
LEFT='Odp3.'*
COMMENT=^Pytanie1*


LEFT / LEWY
Lewy opis pola pozwala zdefiniować tekst umieszczony z lewej jego strony.

Postać atrybutu:

LEFT=<napis>*
LEFT=<odwo>*


Przykład:

LEFT='Odp1.' WIDTH=2*
LEFT='Odp2.'*
LEFT='Odp3.'*


PAGE / STRO
Najprostszą instrukcją jest przejście do nowej strony. Ma ona postać:

PAGE*

i nie może zawierać żadnych innych słów kluczowych. Wymusza ona zakończenie bieżącej strony (ekranu) i rozpoczęcie nowej. Stosuje się ją dla zachowania zgodności z układem stron kwestionariusza jak również do zmniejszenia liczby pól na jednym ekranie (co z jednej strony przyspiesza wyświetlanie stron, a z drugiej pozwala na rozplanowanie pól ułatwiające koderom wprowadzanie danych).

RANGE / ZAKR
Ograniczenie zakresu wprowadzanych wartości jest możliwe tylko dla pól numerycznych. Definicja jest następująca: słowo kluczowe RANGE, znak równości i opis zakresu w nawiasach kwadratowych lub odwołanie do wcześniejszej instrukcji. Przykładowo, deklaracja zakresu może wyglądać tak:

RANGE=[0:22, 30:40, 91, 93, 97:99]*
RANGE=^Pytanie1*


W nawiasach kwadratowych znajdują się rozdzielone przecinkami wartości liczbowe i / lub przedziały wartości. Przedział wartości specyfikuje się jako: wartość początkowa, dwukropek, wartość końcowa.

Specjalne znaczenie ma zakres pusty (oznaczany [ ]). Jego użycie zwalnia program od kontroli zakresu pól, których dotyczy. W takie pola można wpisać dowolną wartość numeryczną. Porządek podawania wartości i zakresów wartości nie jest istotny.

RECID / IDEN
Dokładnie jedno pole liczbowe w rekordzie może wystąpić w roli identyfikatora rekordu danych. Rolę identyfikatora pełnią w tym przypadku kolejne numery nadawane przez program automatycznie wczytywanym rekordom danych. Zadeklarowanie danego pola jako identyfikatora uzyskuje się przez podanie bezparametrowego słowa kluczowego RECID w instrukcji opisującej to pole.

Jeżeli w polu z atrybutem RECID wystąpi definicja wartości automatycznej, rekordy zaczną być numerowane od podanej tam wartości.

Uwaga: identyfikator nie może być polem stałym.

REPEAT / POWT
Jednoczesna definicja wielu pól.

Postać atrybutu:

REPEAT=<liczba>

Przykład:

LEFT='Pyt1.$' WIDTH=1 REPEAT=5*

Powyższa instrukcja tworzy następujące pola:

LEFT='Pyt1.1' WIDTH=1*
LEFT='Pyt1.2'*
LEFT='Pyt1.3'*
LEFT='Pyt1.4'*
LEFT='Pyt1.5'*


RIGHT / PRAW
Prawy opis pola pozwala zdefiniować tekst umieszczony z prawej jego strony.

Postać atrybutu:

RIGHT=<napis>*
RIGHT=<odwo>*


Przykład:

LEFT='Odp1.' WIDTH=2 RIGHT='!!! Kodować tylko zaznaczone odp.'*
LEFT='Odp2.'*
LEFT='Odp3.'*


SIGNAL / SYGN
Definicja słabej odmiany filtru.

Postać atrybutu:

SIGNAL=<zakres><zakres>

Przykład:

SIGNAL=[0][pyt11]*
SIGNAL=[0][pyt11, pyt12]*
LABEL=pyt11 AUTO=9*
LABEL=pyt12 WIDTH=2 AUTO=99*


TEXT
Rodzaj pola jest determinowany obecnością bezparametrowego słowa kluczowego TEXT. Jeśli występuje ono w instrukcji, to definiowane jest pole tekstowe. W przeciwnym przypadku program zakłada, że pole ma być liczbowe.

Postać atrybutu:

TEXT

Przykład:

COMMENT='Pytanie 1'*
LEFT='Marka 1' WIDTH=1*
LEFT='Marka 2'*
LEFT='Marka 3'*
LEFT='inne' WIDTH=40 TEXT*


WHEN / GDY
Definicja silnej odmiany filtru.

Postać atrybutu:

WHEN=<zakres><zakres>

Przykład:

WHEN=[0][pyt11]*
WHEN=[0][pyt11, pyt12]*
LABEL=pyt11 AUTO=9*
LABEL=pyt12 WIDTH=2 AUTO=99*


WIDTH / SZER
Definicja szerokości pola.

Postać atrybutu:

WIDTH=<liczba>
WIDTH=<odwo>


Przykład:

LEFT='Respondent - płeć' WIDTH=1 LABEL=RespPlec*
LEFT='Respondent - wiek' WIDTH=2 LABEL=RespWiek*
LEFT='Główny kupujący - płeć' WIDTH=^RespPlec*
LEFT='Główny kupujący - wiek' WIDTH=^RespWiek*


Zastosowanie praktyczne w części drugiej, muszę przygotować materiały do tego
Stirlitz idąc przez Unter den Linden zauważył człowieka zamalowującego napis na ścianie.
Moderator - pomyślał Stirlitz.
Xylomena
*****
Posty: 544
Rejestracja: czw mar 22, 2007 1:00 am
Lokalizacja: Józefów
Kontakt:

Post autor: Xylomena »

No Bracie, to chyba na merytoryczne pytanka musisz poczekac aż mi też zaczną się zajęcia z tego espeesesa, bo na ten moment jestem w stanie jedynie zrobic oczy w słup... 8O A skoro ja nie rozumiem, co tu się dzieje, to nikt przy zdrowych zmysłach nie ma prawa tego rozumiec :idea: . Tak czy inaczej reszta świata musi czekac na mnie z tym mądrzeniem w wiedzę informatyczną :arrow: . Innego wyjścia nie widzę :???: .
Skończona ilość słów dotyczy tylko skończonej ilości uczuć
Ritter
*****
Posty: 610
Rejestracja: pn cze 25, 2007 2:00 am
Lokalizacja: Warszawa
Kontakt:

Post autor: Ritter »

Czyli sugerujesz, że ja nie jestem przy zdrowych zmysłach? :???:
Stirlitz idąc przez Unter den Linden zauważył człowieka zamalowującego napis na ścianie.
Moderator - pomyślał Stirlitz.
Xylomena
*****
Posty: 544
Rejestracja: czw mar 22, 2007 1:00 am
Lokalizacja: Józefów
Kontakt:

Post autor: Xylomena »

Bierzesz mnie pod włos, a ja chciałamn tylko podbudowac tych wszystkich, którzy na to patrzą na moje podobieństwo (jak cielę na malowane wrota :) ). Poza tym, może tak naprawdę sam nie rozumiesz tego za dobrze, tylko tak Ci się wydaje?
Jeżeli Cię uraziłam to wybacz - nie piłam do Ciebie, tylko jakoś tak wyszło... Nawet jakbym święcie wierzyła, że jesteś kosmitą, czy jakimś humanoidem produkcji rodzimej, to bym Ci tego nie napisała. Z natury jestem bardzo dyskretna i taktowna :cool: .
Skończona ilość słów dotyczy tylko skończonej ilości uczuć
Ritter
*****
Posty: 610
Rejestracja: pn cze 25, 2007 2:00 am
Lokalizacja: Warszawa
Kontakt:

Post autor: Ritter »

No cóż, jeśli chodzi o to co w poście powyżej to raczej rozumiem, co tam się dzieje. W końcu za to biorę pieniądze żeby wiedzieć. :wink: Poza tym, to akurat jest ta prostsza rzecz. :razz:
Stirlitz idąc przez Unter den Linden zauważył człowieka zamalowującego napis na ścianie.
Moderator - pomyślał Stirlitz.
Awatar użytkownika
Witek
***
Posty: 53
Rejestracja: pt mar 16, 2007 1:00 am
Lokalizacja: Rzeszów

Post autor: Witek »

Do tej pory siedziałem cicho, bo myślałem że wszyscy wiedzą o co chodzi...tylko nie ja... i nie chciałem wyjść na debila :roll: Ja tego na studiach nie miałem, bo stary już jestem :idea: No cóż, miałem taką sama minę jak Xylcia, gdy pierwszy raz zobaczyłem tego SPSS-a... Do tej pory, jak potrzebowałem przerobić dane z ankiet, to szedłem do kumpla, który para się tym zawodowo i za symboliczne 500zł :twisted: miałem wszelkie wyliczenia jakich potrzebowałem. Marny ze mnie "komputerowiec", a druga sprawa, że z lenistwa unikam wszelkich "poradników" i do wszystkiego dochodzę sam metodą prób i błędów (częściej błędów :wink: ) a że przy okazji zawsze coś spie.... to już inna bajka.
Ale pisz Ritter o co chodzi z tym SPSS-em, mlodzieży się to przyda a może i mnie starego pryka zainspirujesz i w końcu ściągnę sobie tego plika :roll:
Ritter
*****
Posty: 610
Rejestracja: pn cze 25, 2007 2:00 am
Lokalizacja: Warszawa
Kontakt:

Post autor: Ritter »

Na razie się wstrzymuje, żeby zobaczyć czego na uczelniach uczą. Bo jak przyszła asystentka jakiegoś badacza do mnie to postawiła oczy w słup jak zobaczyła co i jak robię. A to była panienka po licencjacie socjologii na UW :wink: Więc chyba nie wszystko co ja robię jest badaczowi tak naprawdę potrzebne.
Stirlitz idąc przez Unter den Linden zauważył człowieka zamalowującego napis na ścianie.
Moderator - pomyślał Stirlitz.
FrancisBegbie
*****
Posty: 596
Rejestracja: sob cze 23, 2007 2:00 am

Post autor: FrancisBegbie »

Jakis plik przykładowy w tym SPSS mógłbyś rzucić ?
Ritter
*****
Posty: 610
Rejestracja: pn cze 25, 2007 2:00 am
Lokalizacja: Warszawa
Kontakt:

Post autor: Ritter »

Rzucić mogę, tylko najpierw muszę mieć gdzie. Chyba, że kilka PrtScr zrobię.
Stirlitz idąc przez Unter den Linden zauważył człowieka zamalowującego napis na ścianie.
Moderator - pomyślał Stirlitz.
FrancisBegbie
*****
Posty: 596
Rejestracja: sob cze 23, 2007 2:00 am

Post autor: FrancisBegbie »

Może prześlesz na meila - jeżeli nie można wrzucic na serwer np: forum socjologia.pl ?

gibos@o2.pl

Pozdrawiam,
Ritter
*****
Posty: 610
Rejestracja: pn cze 25, 2007 2:00 am
Lokalizacja: Warszawa
Kontakt:

Post autor: Ritter »

Jak ściągniecie SPSS-a to tam są przykładowe pliki.
Stirlitz idąc przez Unter den Linden zauważył człowieka zamalowującego napis na ścianie.
Moderator - pomyślał Stirlitz.
Ritter
*****
Posty: 610
Rejestracja: pn cze 25, 2007 2:00 am
Lokalizacja: Warszawa
Kontakt:

Post autor: Ritter »

Program, do którego są powyższe instrukcje do ściągnięcia tutaj: http://yac.com.pl/download.dgs.po.cen.html. Tak mi się wydawało, że starsze wersje Trybulec udostępnia za free.
Stirlitz idąc przez Unter den Linden zauważył człowieka zamalowującego napis na ścianie.
Moderator - pomyślał Stirlitz.
ODPOWIEDZ