GHID DE OPERARE CU SPSS FOR WINDOWS
OPERATII DE TRANSFORMARE A VARIABILELOR
Daca privim variabilele SPSS din punctul de vedere al modului in care au fost create, putem distinge doua categorii:
a. variabile "primare" care includ valori rezultate direct din cercetare si au fost introduse direct (de regula, d 121c25b e la tastatura)
b. variabile "secundare" rezultate prin transformarile aplicate unor variabile primare.
Situatii tipice in care se impune transformarea variabilelor:
Avem mai multe variabile "primare" care contin raspunsurile la intrebarile unei scale de tip Lickert si suntem interesati sa calculam (intr-o variabila "secundara") suma raspunsurilor.
Avem un numar de variabile ("primare") in care se afla rezultatul partial pentru fiecare minut din cele 10 cate dureaza un test de calcul aritmetic si dorim sa cream o noua variabila ( "secundara") in care sa avem media performantei pe cele 10 minute, sau abaterea standard a performantei pe cele 10 minute
Avem o variabila care contine data nasterii si dorim sa cream pe baza ei o alta variabila care sa contina varsta.
Dorim sa transformam variabila care contine varsta, intr-o alta variabila care contine valori pentru categorii de varsta.
Pentru toate aceste situatii, care sunt unele dintre cele mai uzuale, dar si pentru multe altele inca, SPSS ofera proceduri de transformare in meniul Transform.
In continuare, vom prezenta cateva dintre cele mai frecvent utilizate functii de transformare a variabilelor.
Insumarea variabilelor
Se utilizeaza atunci cand dorim sa obtinem o variabila prin adunarea valorilor din doua sau mai multe variabile.
Imaginea alaturata reprezinta o tabela de date SPSS care cuprinde scorurile la trei examene partiale (scor_1, scor_2 si scor_3). Dorim sa realizam o variabila care sa cuprinda un scor general, prin insumarea celor trei variabile.
Deoarece prin calculare, o noua variabila este plasata dupa toate variabilele existente, am preferat sa inseram o noua variabila imediat dupa cele trei pe care dorim sa le insumam. In acest fel avem si posibilitatea sa controlam usor corectitudinea operatiei de insumare.
Se apeleaza procedura Transform-Compute, care deschide caseta de mai jos:
Se efectueaza urmatoarea succesiune de operatii:
Introducem numele variabilei noi in zona Target Variable ("total").
Scriem expresia de insumare in zona Numeric Expression.
Functia este SUM (expresie numerica, expresie numerica, ), asa cum se vede si in zona listei Functions: Ea poate fi scrisa de la tastatura sau selectata din lista de functii si "ridicata" prin actionarea butonului ▲. Atentie, sintaxa fiecarei functii trebuie respectata intocmai. In cazul nostru, variabilele numerice se vor scrie intre paranteze, una cate una, cu virgula intre ele. Variabilele pot fi scrise de la tastatura sau mutate la randul lor din lista de variabile cu butonul ►.
Daca variabilele ce vor fi insumate se afla in baza de date una dupa alta, ca in cazul exemplului nostru, atunci avem posibilitatea sa scriem o expresie de insumare simplificata, astfel SUM (prima_variabila TO ultima_variabila). In acest caz, clauza TO va fi cuprinsa intre blankuri, pentru a nu fi confundata cu un nume de variabila. Aceasta optiune ne sugereaza cat de important poate fi sa aranjam corespunzator variabilele in structura unei tabele SPSS.
Se apasa butonul OK
Deoarece variabila total exista, SPSS ne intreaba daca dorim sa modificam continutul acesteia.
Raspundem OK, deoarece stim ca am creat aceasta variabila tocmai pentru a depune in ea suma. |
Rezultatul operatiei se vede in imaginea de mai jos: |
Calcularea mediei a doua sau mai multe variabile
Presupunand ca in loc de suma, ne-ar interesa media variabilelor, se procedeaza in mod similar. Expresia de calcul a mediei este MEAN (expresie_numerica, expresie_numerica, ), unde arata ca putem pune oricate variabile (sau valori) numerice, cu virgula intre ele. Ca si in cazul sumei, se poate realiza o expresie cu clauza TO, cu conditia ca variabilele pentru care se realizeaza media sa se afle una dupa alta in tabela SPSS.
Reamintim ca functia MEAN poate fi scrisa de la tastatura sau poate fi adusa din lista de functii, prin selectare si actionarea butonului ▲.
Important: Se va face o distinctie clara intre suma sau media astfel obtinute, care inseamna insumarea sau media valorilor de la mai multe variabile, si suma sau media pe care am calcula-o pe verticala, la nivelul fiecarei variabile in parte. In primul caza se realizeaza operatii la nivelul fiecarui subiect in parte, in timp ce in al doilea caz se fac operatii pe intreaga distributie.
Este de la sine inteles ca expresia de calcul poate fi realizata si intr-o maniera simpla si directa, fara utilizarea functiilor (SUM sau MEAN), astfel:
Pentru suma: scor_1+scor_2+scor_3
Pentru medie: (scor_1+scor_2+scor_3)/3
Sau, orice alt fel de transformari, utilizand operanzii uzuali.
Se pot realiza diverse alte functii de transformare, utilizandu-se marea varietate de functii care se gasesc in lista Functions si a caror semnificatie se poate afla din Help-ul casetei Compute.
Extragerea anului dintr-o variabila de tip cronologic (date)
SPSS ofera functii de transformare cu variabilele de tip cronologic. Dintre acestea, vom exemplifica cu realizarea unei variabile care sa contina anul nasterii, sa zicem, scos dintr-o variabila care contine data nasterii.
Imaginea de mai jos este extrasa din baza de date Employee data.sav
Mai intai, observam ca avem variabila bdate, care contine data nasterii. Pentru a avea varsta, trebuie sa calculam diferenta dintre anul curent (2000) si anul nasterii:
Pentru aceasta am avea nevoie sa facem diferenta dintre anul curent (2000) si anul nasterii, care se afla in campul bdate.
Pentru a avea variabila ce urmeaza a fi creata in apropierea variabilei bdate, vom insera o variabila (denumind-o "virsta"). Apoi, utilizam procedura Compute din meniul Transform:
In campul Target variable introducem numele noii variabile (virsta). In zona Numeric Expression vom scrie expresia de transformare, care se bazeaza pe functia XDATE.YEAR(). Aceasta functie are ca rezultat extragerea valorii care reprezinta anul dintr-o variabila de tip data calendaristica. In cazul nostru, XDATE.YEAR(bdate)=anul nasterii
Ca urmare, putem scrie expresia astfel: 2000-XDATE.YEAR(bdate)
Mai jos putem vedea rezultatul procedurii Compute:
Se observa in variabila virsta, valorile rezultate prin transformare (corespunzatoare anului 2000)
Desigur, transformarea putea fi efectuata si in doua etape. Mai intai prin extragerea anului nasterii intr-o variabila separata si, apoi, prin efectuarea unei noi transformari realizarea diferentei dintre anul curent si anul nasterii. Am preferat o solutie intr-o "singura etapa" pentru ca este mai operativa.
Important: Posibilitatile de transformare a variabilelor oferite de SPSS permit crearea unor noi variabile pe baza celor existente, in functie de necesitatile de prelucrare pe care le avem. In toate cazurile, insa, nu se va alege solutia modificarii valorilor dintr-o variabila "primara" peste valorile deja existente. Cu alte cuvinte, este recomandabil sa cream prin transformare variabile noi, si nu sa modificam valorile existente din variabilele "primare" a caror pierdere ar necesita reintroducerea lor, in caz de necesitate.
RECODIFICAREA VARIABILELOR CU SPSS
Recodificarea unei variabile inseamna convertirea valorilor acesteia, cu scopul obtinerii unei distributii bazata pe frecvente cumulate. Procesul este similar cu crearea unei tabele de frecvente grupate si ne reamintim ca poate fi derulat in maniera descrisa mai jos:
Se face diferenta dintre valoarea cea mai mare si valoarea cea mai mica a unei distributii |
Se imparte valoarea obtinuta la marimea posibila (estimata) a intervalului |
Se selecteaza marimea intervalului care conduce la un numar de clase cuprins intre 5 si 15 |
Se determina limita inferioara a primului interval (trebuie sa fie un multiplu al marimii intervalului) |
Se determina limita superioara a primului interval |
Se construiesc intervalele de clasa pentru fiecare interval, fiind atenti sa avem clase "suprapuse" sau "intervale neacoperite" |
In principiu, desi este recomandabila obtinerea unei grupari de frecvente pe 5-15 clase, se poate opta pentru un numar de clase care serveste cel mai bine interesul de cercetare. De exemplu, in cazul unei distributii de varsta exprimata in ani, este preferabil sa se opteze pentru clase "cincinale" sau "decade", acestea avand si o anumita semnificatie "psihologica".
In urma transformarii de mai sus, am obtinut variabila virsta. Utilizarea ei ca atare in analize statistice este improprie, de aceea ar fi foarte utila obtinerea unei variabile care sa asocieze anumite valori conventionale pentru categorii de virsta. Pentru aceasta putem efectua "recodificarea" variabilei virsta pentru a obtine o distributie grupata de frecvente, astfel:
Se lanseaza procedura Recode - Into Defferent Variables din meniul Transform:
Atentie, se poate alege si optiune Into Same Variables, dar nu este recomandabila deoarece, in cazul unei erori, nu mai avem la dispozitie variabila initiala pentru o noua recodificare.
Pasi de efectuat la aparitia casetei Recode into Defferent Variable:
se trece variabila virsta in zona Numeric Variable Output Variable. Semnul intrebarii arata ca se asteapta numele variabilei ce urmeaza sa fie creata prin recodificare.
Acest nume se scrie in zona: Name, dupa care se apasa butonul Change.
Am ales, absolut conventional, ca nume al variabilei recodificate, v_clase.
Urmeaza acum sa descriem limitele claselor de recodificare. Pentru aceasta, se actioneaza butonul Old and New Values
Desi relativ complicata, caseta de declarare a noilor valori in functie de cele vechi este usor de inteles.
In zona Old value, se alege una dintre variantele de definire a valorilor de la care se pleaca. Sa zicem ca am ales solutia sa recodificam anii pe intervale de zece ani, primul interval fiind 29-39, al doilea 40-49, s.a.m.d.
Pentru aceasta activam optiunea Range si scriem valorile limite al intervalului dorit.
Dupa aceasta, in zona New value oValue, scriem care este valoarea pe care o asignam acestei clase.
In fine, actionam butonul Add pentru a definitiva operatiunea si trecem la definirea urmatoarei clase, pana terminam.
In zona Old New se poate observa lista recodificarilor definite.
Se actioneaza butonul Continue si, la revenirea in caseta anterioara, butonul OK. Rezultatul operatiuni se vede mai jos:
Se observa corespondenta dintre valoarea din variabila virsta, cu valoarea din variabila v_clase.
Pentru valoarea 71, avem missing value in variabila v_clase, deoarece nu am definit un interval care sa cuprinda aceasta varsta. (De regula, aceasta situatie este determinata de o eroare de definire a intervalelor de clasa. Pentru a o repara, ar trebui sa intram din nou in procedura Recode si sa redefinim clasele).
Daca rulam procedura Frequencies (din meniul Statistics-Summarize), obtinem in Output afisarea distributiei de frecvente a variabilei create de noi (v_clase).
Se poate observa ca alegerea noastra pentru limitele de clasificare a produs o clasa (1) cu un numar mult mai mare de subiecti decat celelalte. In plus, avem 12 missing values, ceea ce inseamna ca, al fel ca in cazul valorii de virsta 71, avem si alte valori "scapate" la recodificare.
Daca rezultatul recodificarii nu ne multumeste, il putem relua.
Transformarea operata pe variabila virsta nu este de loc inutila. Daca am fi dorit sa vedem in ce masura este o relatie intre nivelul salariului si varsta, ar fi fost oarecum impropriu (fara a fi propriu-zis o greseala ) sa utilizam o statistica parametrica (corelatia). In analizele statistice pe varste este recomandabil, totusi, sa operam cu grupe de frecvente.
|