Marcin Piwowarczyk

Marcin Piwowarczyk Szef badań online,
IMAS International

Temat: Tabele krzyżowe...

Cześć, chciałbym się poradzić w sprawie przygotowania tabeli krzyżowej, któa zawierałaby także kategorie, których liczebnośc jest równa 0.

Przykłądowo, krzyżuję zmienną V1 i V2, obie są czterokategorialne (wartości 1-4). W zmiennej V1 kategoria 1 nie pojawia się w pliku danych.

SPSS mi wypluwa najprostszą tabelę wyglądającą mniej wiecej tak (mam nadzieję, że się to nie rozjedzie):
v2
1 2 3 4
v1 2 n n n n
3 n n n n
4 n n n n

Nie ma w niej miejsca na kategorię 1 dla zmiennej V1. Można to zrozumieć, bo są to wartości zerowe, ale dla mnie oznacza problem, gdy chcę tworzyć co pewien czas raporty w standardowych tabelach (radzę sobie poprzez ręczne dodawanie kulumn i wierszy). Nie muszę dodawać, ze może być to kłoptliwe zwłaszcza wtedy, gdy zmienna jest nie 4-, a 140-kategorialna...

Za wszelką pomoc z góry dziękuję.
Marcin Piwowarczyk

Marcin Piwowarczyk Szef badań online,
IMAS International

Temat: Tabele krzyżowe...

Tak, jak myślałem - "wizualizacja" tabeli się rozjechała ;)
Dopiero po kliknięciu "cytuj" widać ją jak trzeba.
Michał Bojanowski

Michał Bojanowski socjolog, analityk

Temat: Tabele krzyżowe...

Cześć,

Na której wersji SPSS pracujesz? W nowszych można to zrobić komendą ctable, w starszych wymaga to nieco żonglerki.

Na moim spss15 działa coś takiego:

* obie zmienne maja wartosci 1-5.
* w zmiennej 'vara' nie wystepuje wartosc 3.
DATA LIST free / vara varb.
BEGIN DATA
1 1 1 1 1 2 1 2 1 3 1 3 1 4 1 4 1 5 1 5
2 1 2 1 2 2 2 2 2 3 2 3 2 4 2 4 2 5 2 5
4 1 4 1 4 2 4 2 4 3 4 3 4 4 4 4 4 5 4 5
5 1 5 1 5 2 5 2 5 3 5 3 5 4 5 4 5 5 5 5
END DATA.

CTABLES
/VLABELS VARIABLES=vara varb DISPLAY=DEFAULT
/TABLE varb [C] BY vara [C]
/slabels visible=no
/CATEGORIES VARIABLES=vara varb ORDER=A KEY=VALUE EMPTY=INCLUDE.

Polecam też zajrzeć na http://spsstools.net na przykład tutaj:
http://www.spsstools.net/SampleSyntax.htm#ChartsAndTables

hth
i pozdrawiam

Michał
Marcin Piwowarczyk

Marcin Piwowarczyk Szef badań online,
IMAS International

Temat: Tabele krzyżowe...

Cześć Michał,

pracuję tez na 15-tce. Przepuściłem Twój wpis przez syntax i nie pojawiała mi się kategoria 3 w vara :( Zobacz tutaj:


Obrazek


Niemniej, dzięki za podpowiedź, to jakiś trop w dobrym kierunku.
Próbowałem coś sklecić w custom tables, ale uważam ten moduł za jakiś niewypał.

Swoją drogą - zmierzyłem się z tym problemem w Statistice i tam nie stanowiło to żadnego kłopotu, ale co robić, gdy MUSZĘ to wykonac pod spss...

Pozdrawiam,
MarcinMarcin Piwowarczyk edytował(a) ten post dnia 09.08.08 o godzinie 16:03
Marcin Piwowarczyk

Marcin Piwowarczyk Szef badań online,
IMAS International

Temat: Tabele krzyżowe...

Już znalazłem odpowiedź - Twój syntax sprawdził się u mnie dopiero po dodaniu etykiet kategoriom:

val label vara to varb
1 '1'
2 '2'
3 '3'
4 '4'
5 '5'.

Pewnie w swoim pliku miałeś zdefiniowane kategorie, u mnie nie chcaiło bez tego pracować.

Jeszcze raz dzięki, Michał.
Michał Bojanowski

Michał Bojanowski socjolog, analityk

Temat: Tabele krzyżowe...

Ach tak, zapomnialem wkleic labelek... :/
Przepraszam

m.

ps. wlasnie pracodawca zainstalowal mi spss16, nie dajcie sobie tego zrobic!!! Caly interface został przeprogramowany jest teraz chyba w Javie. Dzięki temu jak myślę są wersje SPSS pod linuxa. Ale... Generowanie wyników (outputu) trwa strasznie długo. Spróbujcie puścić 'freq' na zmiennej która ma powyżej 200 wartości.... Nie mówiąc już o zawodnym funkcjonowaniu niektórych skrótów klawiszowych...
Tomasz Rakowski

Tomasz Rakowski Market researcher

Temat: Tabele krzyżowe...

ja z 16 bawilem sie 2 tygodnie... nie dalem rady. W sumie kilka funkcjonalnosci które mnie skusiły (zmiana typu zmiennych z linii komend itp) zupelnie nie rekompensuje straty wynikłej ze zniknięcia innych.

Miałem przyjemność popisać z Panią w SPSSie odpowiedzialną za kontakty z firmami badawczymi. Na drugiego maila nie odpowiedziała. Może chociaż przekazała dalej:)

Oto, co ja zauważyłem (uwagi zebrane po 1 dniu używania, na poziomie podstawowej obróbki danych):

1/ Pliki outputu uzyskały nowe rozszerzenie (.spv). Czy jest ono kompatybilne wstecznie, tj czy na starszej wersji jestem w stanie otworzyć plik?

2/ Poprzednio bardzo użytecznym rozwiązaniem była możliwość przeklejenia np. tabelki do Excela – przeklejały się wtedy wartości bez żadnych formatów; obecnie zdarza się czasem, że przekleja się tabelka jako obiekt (brak jednak zasady)

3/ Eksport do xls – straszenie powolny, nie zawsze konczy się sukcesem (przy większych tabelkach tworzy się pusty dokument jedynie z informacją o pliku źródłowym oraz o wykonanej komendzie – czasem z informacją o zbyt małej ilości dostępnej pamięci – mam 1 GB – czasem bez takiej informacji); przy dużej liczbie eksportowanych obiektów łatwo przeoczyć brak jednego, wiec jest to dla mnie istotna sprawa

4/ edytowalność wyeksportowanych analiz – głównie tabel – jest dość niska; chodzi przede wszystkim o to, że próba np. zmiany czcionki, jej wielkości w arkuszu kończy się „nieoczekiwanym błędem Excela”; pomaga jedynie skopiowanie samych wartości komórek do czystego pliku xls


SYNTAKS
5/ tu raczej nie można mieć za dużo uwag, ale jedną mi się udało znaleźć – straciłem możliwość zaznaczania wiersza w linii poleceń przy pomocy kliknięcia po jego lewej stronie; teraz muszę posługiwać się Shiftem+strzałki, lub też zaznaczać kursorem edycyjnym fragment tekstu



OGÓLNE
6/ mając uruchomiony zbiór, jeżeli otworzę syntaksa z poziomu eksploratora Windows, zostanie on „podczepiony” pod nowy, pusty zbiór i nie ma możliwości wykorzystania go do edycji/analizy zbioru wcześniej otwartego; innymi słowy: jeżeli chcę otworzyć syntaksa na potrzeby otwartego zbioru, muszę to zrobić przez File… Open…; próbowałem zmienić to ustawienie poprzez Edit… Options… General… Open only one dataset at a time, ale to nie działa; czy jest jakiś inny sposób na zmianę tego ustawienia?

7/ Nowa wersja straciła pamięć ostatnio używanych folderów; wcześniej, korzystając z opcji Open… file/syntaks… w oknie pokazywana była zawartość ostatnio używanego folderu; teraz po wyłączeniu SPSSa i ponownym uruchomieniu zawsze ląduję w folderze Moje dokumenty; czy mogę jakoś to zmienić w opcjach?

8/ nie mam też możliwości kopiowania różnych formatów na poziomie variable view; poki co zauważyłem:

a/ nie można kopiować długości zmiennych tekstowych (przynajmniej przy użyciu standardowego Ctrl+v Ctrl+c); przy zmiennych numerycznych możliwość ta pozostała

b/ kopiując format daty, co prawda zmienia się on, ale pozostaje stara liczba znaków (sytuacja przy kopiowaniu formatu daty yyyy/mm/dd do zmiennej o formacie dd-mmm-yy.

Ponoć jakieś patche wyszły, ale już mnie to nie interesowało.

A już niedługo SPSS17 - na Zachodzie już jest. Ciekawe, co tym razem...
Piotr Kołodziejczyk

Piotr Kołodziejczyk Socjolog, analityk,
informatyk

Temat: Tabele krzyżowe...

Tomasz Rakowski:

Oto, co ja zauważyłem (uwagi zebrane po 1 dniu używania, na poziomie podstawowej obróbki danych):

1/ Pliki outputu uzyskały nowe rozszerzenie (.spv). Czy jest ono kompatybilne wstecznie, tj czy na starszej wersji jestem w stanie otworzyć plik?

Nie, stara wersja *.spo dziala ze stara wersja. Nowa tylko w nowej. mozna doinstalowac sobie przegladarke starych plikow.


2/ Poprzednio bardzo użytecznym rozwiązaniem była możliwość przeklejenia np. tabelki do Excela – przeklejały się wtedy wartości bez żadnych formatów; obecnie zdarza się czasem, że przekleja się tabelka jako obiekt (brak jednak zasady)

3/ Eksport do xls – straszenie powolny, nie zawsze konczy się sukcesem (przy większych tabelkach tworzy się pusty dokument jedynie z informacją o pliku źródłowym oraz o wykonanej komendzie – czasem z informacją o zbyt małej ilości dostępnej pamięci – mam 1 GB – czasem bez takiej informacji); przy dużej liczbie eksportowanych obiektów łatwo przeoczyć brak jednego, wiec jest to dla mnie istotna sprawa

Wlasnie m.in. to ma naprawiac patch (dlugo dziala, ale nawet duze tabele sie eksportuja): http://support.spss.com/newSupport/Default.asp Podaje linka, bo wcale moim zdaniem nie jest latwo znalezc.

4/ edytowalność wyeksportowanych analiz – głównie tabel – jest dość niska; chodzi przede wszystkim o to, że próba np. zmiany czcionki, jej wielkości w arkuszu kończy się „nieoczekiwanym błędem Excela”; pomaga jedynie skopiowanie samych wartości komórek do czystego pliku xls

Ale to chyba nigdy nie dzialo szczegolnie dobrze.... Teraz u mnie dziala tylko czasem kolorki sie zmieniaja.


SYNTAKS
5/ tu raczej nie można mieć za dużo uwag, ale jedną mi się udało znaleźć – straciłem możliwość zaznaczania wiersza w linii poleceń przy pomocy kliknięcia po jego lewej stronie; teraz muszę posługiwać się Shiftem+strzałki, lub też zaznaczać kursorem edycyjnym fragment tekstu
To niewielka roznica w stosunku do pozostalych. Ale w wersji 17 ma byc jakis przyjazniejszy edytor do syntaksu ;)



OGÓLNE
6/ mając uruchomiony zbiór, jeżeli otworzę syntaksa z poziomu eksploratora Windows, zostanie on „podczepiony” pod nowy, pusty zbiór i nie ma możliwości wykorzystania go do edycji/analizy zbioru wcześniej otwartego; innymi słowy: jeżeli chcę otworzyć syntaksa na potrzeby otwartego zbioru, muszę to zrobić przez File… Open…; próbowałem zmienić to ustawienie poprzez Edit… Options… General… Open only one dataset at a time, ale to nie działa; czy jest jakiś inny sposób na zmianę tego ustawienia?

Nie bardzo rozumiem. U mnie to chyba dziala poprawnie. Aktywny syntaks to ten klikniety plusem na pasku narzedzi. Tak samo aktywny plik danych i plik outputu. Komenda syntaksu mozna zmienic aktywny plik danych, jak rowniez zalaczyc zewnetrzny plik syntaksu na zasadzie wklejenia.
Mnie bardziej drazni, ze przy licencji sieciowej, gdy mam otwarty jeden plik danych, to gdy dwa razy klikne na inny plik danych to otworzy mi sie cala nowa instancja spss, a nie plik w tej juz otwartej, co wplywa na zajecie licencji.


7/ Nowa wersja straciła pamięć ostatnio używanych folderów; wcześniej, korzystając z opcji Open… file/syntaks… w oknie pokazywana była zawartość ostatnio używanego folderu; teraz po wyłączeniu SPSSa i ponownym uruchomieniu zawsze ląduję w folderze Moje dokumenty; czy mogę jakoś to zmienić w opcjach?

8/ nie mam też możliwości kopiowania różnych formatów na poziomie variable view; poki co zauważyłem:

a/ nie można kopiować długości zmiennych tekstowych (przynajmniej przy użyciu standardowego Ctrl+v Ctrl+c); przy zmiennych numerycznych możliwość ta pozostała

b/ kopiując format daty, co prawda zmienia się on, ale pozostaje stara liczba znaków (sytuacja przy kopiowaniu formatu daty yyyy/mm/dd do zmiennej o formacie dd-mmm-yy.

Te rzeczy jutro sprawdze.

Pozdrawiam,
Piotr
Katarzyna K.

Katarzyna K. właściciel w firmie
Target Grupa
badawcza

Temat: Tabele krzyżowe...

Witam. Pracuje na wersji 13 i chyba mam podobny problem .. staram się utworzyć tabelkę gdzie będą obliczane % w wierszu. problem polega na tym że każda zmienna (w tym przypadku o nazwie "b") ma 3 wartości i zdarza się, że w niektórych nie udzielono danych odpowiedzi, zatem nie widać ich w tabelce. mnie zależy aby pojawiła się wartość 0%.

oto syntax

* General Tables.
TABLES
/FORMAT BLANK MISSING('.')
/GBASE=CASES
/TABLE=(STATISTICS) BY b
/STATISTICS
count( b( F5.0 ))
cpct( b( PCT5.1 ) 'Row %').

1 2
Count 3 6
Row % 33,3% 66,7%

będę wdzięczna za każdą pomoc, może to dla kogoś wydawać się błahe, jednak jestem raczej początkującym użytkownikiem.
Marcin Piwowarczyk

Marcin Piwowarczyk Szef badań online,
IMAS International

Temat: Tabele krzyżowe...

Katarzyna Kapelan:
[...] mnie zależy aby pojawiła się wartość 0%.

oto syntax

* General Tables.
TABLES
[...]

W tym module tego nie zrobisz, zrób to poprzez custom tabels - tak, jak mi poradził Michał. Tam mozna zaznaczyć pole, które włacza lub wyłącza pojawianie się kategorii, które są zdefiniowane, ale z różnych powodów nie ma w danych.
Katarzyna K.

Katarzyna K. właściciel w firmie
Target Grupa
badawcza

Temat: Tabele krzyżowe...

Udało się :)

oto syntax:

*Define Variable Properties.
*VAR00001.
VARIABLE LEVEL VAR00001 (NOMINAL).
FORMATS VAR00001 (F8.2).
EXECUTE.
* Custom Tables.
CTABLES
/VLABELS VARIABLES=VAR00001 DISPLAY=DEFAULT
/TABLE BY VAR00001 [ROWPCT.COUNT PCT40.1]
/CATEGORIES VARIABLES=VAR00001 ORDER=A KEY=VALUE EMPTY=INCLUDE.

i tabelka, oczywiście poprzesuwało się :(

VAR00001 1 2 3
Row N % Row N % Row N %
,0% 66,7% 33,3%

Dziękuje !!!!!!!!
Marcin Piwowarczyk

Marcin Piwowarczyk Szef badań online,
IMAS International

Temat: Tabele krzyżowe...

Katarzyna Kapelan:
Udało się :)

Cieszę się bardzo ;)

Następna dyskusja:

Tabele specjalne w SPSS Sta...




Wyślij zaproszenie do