Generator kodebooka
Wypisz zmienne, po jednej w wierszu — nazwę, etykietę, typ, etykiety wartości, kody braków — a otrzymasz tabelę kodebooka, którą możesz wkleić do pliku README, oraz składnię stosującą te same etykiety do danych: VARIABLE LABELS, VALUE LABELS i MISSING VALUES dla SPSS albo kod factor lub haven dla R. Narzędzie sprawdza też nazwy i etykiety pod kątem limitów SPSS. Za darmo, bez rejestracji. Nic, co wpiszesz, nie opuszcza przeglądarki.
Twoje zmienne
Pola w tej kolejności, oddzielone | albo tabulatorami (wklej prosto z arkusza): nazwa | etykieta | typ | etykiety wartości | kody braków | uwagi. Wymagana jest tylko nazwa.
Typ to scale, ordinal, nominal albo string. Etykiety wartości to pary kod=etykieta oddzielone średnikami. Kody braków oddziel przecinkami; zakres zapisz jako 997 to 999, a dla otwartego końca użyj LO albo HI.
Base R zamienia etykiety wartości w czynniki, a kody zdefiniowane przez użytkownika w NA. Styl haven trzyma kody i etykiety razem, tak jak robi to SPSS.
Używana w składni R. Niepoprawna nazwa wraca do df.
Kodebook
Wpisz lub wklej zmienne powyżej albo naciśnij „Wczytaj przykład”.
Eksport
Uruchom z otwartym plikiem danych: VARIABLE LABELS, VALUE LABELS, MISSING VALUES i VARIABLE LEVEL. Nie tworzy zmiennych ani nie ustawia szerokości ciągów.
Jak korzystać z generatora kodebooka
- 1. Wypisz zmienne. Jedna w wierszu, pola oddzielone znakiem | albo tabulatorem, tak by dało się wkleić prosto z arkusza: nazwa, etykieta, typ, etykiety wartości, kody braków, uwagi. Wymagana jest tylko nazwa.
- 2. Opisz wartości. Etykiety wartości zapisuj jako pary kod=etykieta oddzielone średnikami (1=Kobieta; 2=Mężczyzna). Kody braków oddzielaj przecinkami, a zakres zapisuj jako 997 to 999. Jako typ wpisz scale, ordinal, nominal albo string.
- 3. Przeczytaj sprawdzenia. Tabela pokazuje, co zostało zrozumiane. „Do sprawdzenia” wymienia pominięte pary, powtórzone nazwy i wszystko, co odrzuciłby SPSS, z numerem wiersza.
- 4. Eksportuj. Wybierz składnię SPSS, składnię R, tabelę Markdown albo CSV, a następnie skopiuj lub pobierz. Dla R wybierz base R albo haven i nazwij ramkę danych.
Czym jest kodebook
Kodebook to klucz do zbioru danych. Kolumna o nazwie q7, pełna jedynek, dwójek i dziewiątek, nic nie znaczy dla czytelnika ani dla Ciebie za rok, dopóki dokument nie powie, o co pyta q7, co oznacza każda liczba i które liczby w ogóle nie są odpowiedziami. Kodebook zapisuje dla każdej zmiennej jej nazwę, opisową etykietę, typ, opisane wartości i kody braków danych. To pierwsze, czego szuka współpracownik albo recenzent.
Tabela i kod pochodzą z jednej listy, więc nie mogą się rozjechać. Narzędzie nie czyta pliku z danymi: wpisujesz definicje i nie występują tu żadne wartości danych.
Typy i kody braków
| Typ | Zastosowanie | W SPSS | W base R |
|---|---|---|---|
| scale | Wielkości mierzone: wiek, dochód, wynik testu | VARIABLE LEVEL SCALE | as.numeric() |
| ordinal | Kategorie uporządkowane: skala zgodności 1–5 | VARIABLE LEVEL ORDINAL | ordered factor |
| nominal | Kategorie bez kolejności: płeć, kraj | VARIABLE LEVEL NOMINAL | factor |
| string | Tekst: odpowiedzi otwarte, identyfikatory uczestników | Poziom nie jest ustawiany | as.character() |
Zmienna skali może nadal mieć etykiety wartości, na przykład kod dla „odmowy odpowiedzi”. Base R zachowuje ją jako liczbową i nie zamienia w czynnik.
Kod braku to liczba, która zastępuje „brak odpowiedzi”: -99 dla odmowy, -98 dla „nie wiem”, 997 to 999 dla kilku powodów naraz. Zostawione bez zmian, te liczby trafiają do średnich. Zadeklarowanie ich jako braków użytkownika mówi SPSS, by pominął je w obliczeniach, zachowując kody w pliku. R nie ma w base takiej flagi, więc składnia base zamienia kody na NA; wersja haven zachowuje je jak SPSS.
Co dopuszcza SPSS
Sprawdzający trzyma się dokumentacji składni poleceń IBM. Nazwa zmiennej może mieć do 64 bajtów, musi zaczynać się od litery albo @, nie może zaczynać ani kończyć się kropką i nie może być jednym z zastrzeżonych słów ALL, AND, BY, EQ, GE, GT, LE, LT, NE, NOT, OR, TO lub WITH. Nazwa zaczynająca się od # tworzy zmienną tymczasową, a zaczynająca się od $ jest zarezerwowana dla zmiennych systemowych, więc narzędzie odrzuca obie. Etykiety wartości mogą mieć do 120 bajtów. Zmienna liczbowa może mieć do trzech dyskretnych wartości braków albo jeden zakres i jedną dodatkową wartość dyskretną, jak w LO THRU 0, 999. IBM zaleca, by każdy wiersz składni mieścił się w 256 znakach; narzędzie trzyma się 251 bajtów, limitu, przy którym — jak zgłaszano — SPSS ostrzega, więc bardzo długa etykieta jest oznaczana, zanim zawiedzie. Zobacz strony IBM: nazwy zmiennych i VALUE LABELS.
Przykład krok po kroku
„Wczytaj przykład” ładuje pięć zmiennych z ankiety: tekstowy identyfikator, wiek liczbowy, płeć nominalną z czterema opisanymi wartościami, pozycję porządkową na pięciostopniowej skali oraz dochód, którego kody 997 to 999 są brakami. Wynik w SPSS to cztery polecenia. VARIABLE LABELS obejmuje wszystkie pięć zmiennych, VALUE LABELS obejmuje płeć i pozycję porządkową, MISSING VALUES obejmuje cztery (wiek, płeć, pozycję porządkową i dochód), a VARIABLE LEVEL obejmuje cztery zmienne nietekstowe. Tak wygląda polecenie MISSING VALUES, które generuje:
Przykład: polecenie MISSING VALUES
MISSING VALUES age (-99) /gender (-99) /sat1 (-99, -98) /income (997 THRU 999).
W R wersja base zamienia te kody na NA, a oznaczone zmienne w czynniki, z pozycją porządkową jako uporządkowanym czynnikiem. Wersja haven wywołuje haven::labelled_spss(), którego argumenty labels, na_values, na_range i label przechowują te same cztery rzeczy. Narzędzie zapisuje każdą z nich w jednym wierszu, więc możesz usunąć zmienne, których nie chcesz.
Ograniczenia i ostrzeżenia
- Nie czyta danych. Sprawdź, czy każdy podany przez Ciebie kod rzeczywiście występuje i czy nie występuje żaden kod, którego nie podano.
- Składnia R zmienia dane. Wersja base nadpisuje każdą kolumnę. Pracuj na kopii i sprawdź każde
as.numeric()względem surowego pliku; wartość, której nie da się odczytać jako liczby, staje sięNAz ostrzeżeniem. - Zmienne tekstowe w SPSS. Ciągi wymagają szerokości w chwili tworzenia, a składnia tutaj nie tworzy zmiennych. Uruchom ją przy otwartych danych.
- Zachowaj spójność kodów. Używaj tych samych kodów braków tam, gdzie się da, i nigdy kodu, który mógłby być prawdziwą odpowiedzią.
Najczęstsze pytania
- Czym jest kodebook w badaniach?
- Kodebook to dokument wyjaśniający zbiór danych: jak nazywa się każda zmienna, co mierzy, jak jest zakodowana i które kody oznaczają brak danych. Ktoś, kto nigdy nie widział danych, powinien móc przeczytać kodebook i zinterpretować każdą kolumnę. Bywa nazywany słownikiem danych.
- Co powinien zawierać kodebook?
- Co najmniej nazwę, etykietę i typ każdej zmiennej, etykiety wartości dla zmiennych zakodowanych oraz kody braków danych. Kodebooki ankiet często dodają dokładne brzmienie pytania, opcje odpowiedzi, kogo pytano oraz uwagi o przekodowaniu albo zmiennych wyprowadzonych. To narzędzie obejmuje pierwszą grupę i ma kolumnę uwag na resztę.
- Jak dodać etykiety wartości i braki w składni SPSS?
- Użyj VALUE LABELS z nazwą zmiennej, po której następują pary kod i etykieta, np. VALUE LABELS gender 1 "Female" 2 "Male". Użyj MISSING VALUES, podając zmienną i jej kody w nawiasie, np. MISSING VALUES age (-99). Każde polecenie kończ kropką. Narzędzie zapisuje oba, z jednym blokiem na zmienną, oddzielonymi ukośnikami.
- Ile braków może mieć zmienna SPSS?
- Zmienna liczbowa może mieć do trzech pojedynczych braków użytkownika albo jeden zakres wartości plus jedną dodatkową wartość dyskretną. Zakres zapisuje się z THRU, a LO i HI oznaczają najniższą i najwyższą wartość. Narzędzie oznacza zmienną, która to przekracza.
- W R lepiej użyć base R czy haven?
- Użyj base R, jeśli będziesz analizować dane tylko w R: czynniki niosą etykiety, a NA niesie kody braków. Użyj haven, jeśli dane pochodzą z SPSS, Stata lub SAS albo do nich wrócą, bo labelled_spss() trzyma razem kody, etykiety i braki zdefiniowane przez użytkownika. Dokumentacja haven opisuje tę klasę jako modelującą braki użytkownika w SPSS.
- Czy moje dane są przesyłane?
- Nie. Wszystko działa w przeglądarce i nic, co wpiszesz, nie jest wysyłane. Narzędzie potrzebuje tylko definicji zmiennych, a nie wartości danych.