Valnámskeið í aðferðafræði:
Sérefni í dreifigreiningu


Spurt og svarað

Fyrirspurnir til kennara

Fyrirspurnir og svör við þeim verða birt hér jafnóðum og unnið er úr þeim. Spurningar eru stundum lítillega færðar í stílinn til að gefa kost á svörum sem gagnast fleirum en fyrirspyrjandanum einum.

Spurningar og svör eru birt í öfugri tímaröð, þ.e. nýjustu svörin efst en þau elstu neðst.

Velja_hóp_til_úrvinnslu

Skoða_brottfallsmynstur

Reikna_meðaltal_þegar_er_brottfall

Lesa_hráskrá_med_Data List


 

Velja hóp til úrvinnslu

?

Þegar ég var að vinna verkefni 2 felldi ég út eina af samræmdu breytunum úr líkaninu. Við það hækkaði skýrða dreifingin (R2) um 0,5 %. Hvernig má það vera, hlýtur skýringin ekki alltaf að minnka eða standa í stað þegar frumbreyta er fjarlægð úr aðfallsgreiningu?

!

Jú, skýringin minnkar alltaf þegar frumbreyta er fjarlægð en hugsanlega mjög lítið.

Skýringin á þessari hækkun hjá þér er ugglaust það að þú ert að vinna með misjafnlega marga einstaklinga eftir því hvert líkanið er. Ímyndum okkur tvö líkön sem við metum í SPSS.

REGRESSION
/MISSING LISTWISE
/NOORIGIN
/DEPENDENT y
/METHOD=ENTER x1 x2 x3 .

REGRESSION
/MISSING LISTWISE
/NOORIGIN
/DEPENDENT y
/METHOD=ENTER x1 x2.

Fyrra líkanið tekur með alla einstaklinga sem hafa ekkert brottfall á breytunum Y, X1, X2 og X3. Seinna líkanið tekur þá með sem eru án brottfalls á Y, X1 og X2. Ef einhver hefur brottfall á X3 en ekki X1 eða X2 þá verða færri einstaklingar í seinna líkaninu en því fyrra. Þetta veldur því að við berum saman niðurstöður tveggja líkana, en samanburðurinn verður villandi. Ef hópurinn sem líkönin byggjast á breytist frá einu líkani til annars er erfitt að túlka breytingar. Þær geta verið vegna þess að X3 var tekin út eða vegna þess að nýir einstaklingar komu inn í úrvinnsluna.

Því er skynsamlegt að skoða brottfall rækilega áður en byrjað er á úrvinnslu og skilgreina strax í upphafi þann hóp sem úrvinnslan byggir á og framkvæma alla úrvinnsluna á þeim einstaklingum.


?

Ég er búinn að athuga brottfall breyta og veit á hvaða hópi ég vil byggja úrvinnsluna. Geturðu sagt mér hvernig ég fer að því að skilgreina hópinn í SPSS.

!

Það eru ýmsar leiðir til að skilgreina hópinn sem unnið er með í SPSS.

Sú einfaldasta er að tilgreina allar breyturnar í skipuninni sem framkvæmir úrvinnsluna. Þannig má t.d. bæta /Variables undirskipun við Regression skipunina og telja allar breytur sem unnið er með þar. Þetta þarf að gera í skipanaglugganum.

REGRESSION
/Variables= x1, x2, x3, y
/MISSING LISTWISE
/NOORIGIN
/DEPENDENT y
/METHOD=ENTER x1 x2.

Þessi skipun er alveg eins og seinna líkanið hér fyrir ofan nema hvað allar breyturnar, líka x3, eru taldar upp í Variables undirskipuninni. Fyrir vikið framkvæmir SPSS úrvinnsluna aðeins á þeim einstaklingum (færslum) sem eru án brottfalls á y, x1, x2 og x3.

Sama árangri má einnig ná með Select if skipuninni. Hún skilgreinir þær færslur (einstaklinga) sem eiga að vera í úrvinnslunni og fjarlægir hinar úr gagnaskránni. T.d. mætti ná saman árangri og hér fyrir ofan með skipuninni:

Select if (Nmiss(Y, X1, X2, X3) = 0).

Til þess að vinna aftur með alla gagnaskrána þarf að opna hana að nýju! Select if fjarlægir viðkomandi færslur alveg úr gögnunum sem SPSS geymir í minni tölvunnar en ef ekki er vistað í millitíðinni geymir gagnaskráin á diskinum upprunalegu gögnin óskert.

Svipaða möguleika gefur að fara í DATA/Select cases. Þar má meðal annars merkja við valkostinn if condition is satisfied og ýta á takka merktan if. Þá opnast valgluggi sem gefur færi á að skilgreina rökfall svipað og við höfum notað í Select if skipuninni. T.d. má skrifa þar inn Nmiss(Y, X1, X2, X3) = 0 og ýta á Continue til að loka glugganum.

Þegar glugginn lokast komum við til baka í fyrri valmynd. Þar má velja Unselected cases are-Deleted og þá fær maður sömu hegðun og með Select if. Við getum í staðinn valið Unselected cases are-Filtered en þá eru færslunum ekki eytt úr skránni (þ.e. skránni eins og hún er í minni tölvunnar) heldur er búin til sérstök breyta sem skilgreinir valið og færslurnar síaðar samkvæmt henni. Þetta sést best með því að skoða nýju breytuna sem myndast og leggjast yfir skipanirnar sem birtast. Til að afturkalla valið er farið aftur í DATA/Select Cases og merkt við All Cases.


?

Ég er í smá vandræðum. Ég byrjaði með 5 frumbreytur og notaði aðferðina sem er útskýrð í svörunum hér fyrir ofan. Líkönin byggðust því öll á sömu 175 einstaklingunum.

Vandræðin eru þessi. Af ýmsum ástæðum endaði ég með líkan sem hefur aðeins 3 frumbreytur og enn er ég að vinna með sömu 175 einstaklingana. Hins vegar eru það samtals 189 einstaklingar sem eru með brottfall á þessum þremur breytum eða töluvert fleiri en mynda hópinn sem ég kaus að vinna með.

Á ég samt að byggja líkanið á aðeins 175 einstaklingum eða ætti ég að byggja þetta lokalíkan á öllum 189 einstaklingum?

!

Sjálfum finnst mér eðlilegt að byggja lokalíkanið á öllum þeim færslum (einstaklingum) sem ég hef til ráðstöfunar. Ég myndi því í lokin velja alla þá sem ekki hafa brottfall á breytum lokalíkansins og meta það aftur á grundvelli alls þess hóps. Þannig fæ ég nákvæmara líkan, þ.e. stærri hópur gefur að jafnaði lægri staðalvillur og því nákvæmari spá um hallastuðlanna.

Þú getur átt von á einhverjum smávægilegum breytingum við það að stækka hópinn eftir að lokalíkanið er fundið. Ef breytingar verða umtalsverðar, þarf auðvitað að grafast fyrir um ástæður þess. Það er t.d. hugsanlegt að einhver einstaklingar hafi óeðlilega mikil áhrif á líkanið og þá þarf að taka afstöðu til þeirra.


 

Skoða brottfallmynstur

?

Við erum í vanda með brottfallsgreiningu. Skipanirnar sem þú gafst okkur virka ekki!!? SPSS vildi ekki kannast við flest hugtökin.

!

Eftirfarandi er mát (template) fyrir skipanirnar sem þarf til að sjá mynstrið. Þú þarft að bæta við nöfnunum á breytunum og keyra þetta síðan. Gættu þess að opna gagnaskrána áður en þú keyrir þessar skipanir.

Ein leiðrétting er í neðangreindu máti. Röðun er gerð með skipun sem heitir SORT CASES en ekki SORT eins og ég sagði í tíma.

RECODE breytulisti (MISSING = 1) (ELSE = 0).

SORT CASES breytulisti.

AGGREGATE /OUTFILE * /BREAK breytulisti

/ fjoldi 'Fjöldi færslna með þetta brottfallsmynstur' = N.

LIST /VARIABLES breytulisti, Fjoldi.

Eftirfarandi er dæmi um útfærslu miðað við að brottfall sé skoðað fyrir þrjár breytur sem heita a, b og c.

RECODE a,b,c (MISSING = 1) (ELSE = 0).

SORT CASES a,b,c.

AGGREGATE /OUTFILE * /BREAK a,b,c

/ fjoldi 'Fjöldi færslna með þetta brottfallsmynstur' = N.

LIST /VARIABLES a,b,c, Fjoldi.

Þetta á sannarlega að virka og virkar ágætlega í útgáfu 7,5 hjá mér. Farðu nákvæmlega yfir skipanirnar, gættu þess að skipanirnar endi á punkti („.") og lestu vel umkvartanirnar (WARNINGS og ERRORS) frá SPSS.


 

Reikna meðaltal þegar er brottfall á breytum

?

Ég er að vinna verkefni II og vil reikna meðaltal fyrir framhaldsskólaeinkunnirnar fjórar (IslF10, EnsF10, DanF10,StaF10). En þar sem brottfall er stundum á einni eða fleiri breytum vil ég reikna meðaltalið aðeins fyrir þær breytur þar sem ekkert brott fall er. T.d. ef nemandi er með allar einkunnir nema EnsF10, þá vil ég nota meðaltalið af IslF10, DanF10 og StaF10.

!

Hvernig nákvæmlega er best að meðhöndla brottfallið er töluvert álitamál. Þú velur þessa leið en aðrar leiðir koma einnig til greina. Notaðu aðferðina sem ég sýndi ykkur í tíma til að sjá mynstur brottfalls til að hjálpa þér við að taka ákvörðun um þetta. Mundu að rökstyðja vel þá lausn sem þú velur.

Til að reikna meðaltal fjögurra einkunna er einfaldast að nota Mean fallið í SPSS, t.d. eins og hér er sýnt.

COMPUTE Meðal= Mean(IslF10, EnsF10, DanF10, StaF10).

Fallið Mean virkar þannig að meðaltalið er alltaf reiknað fyrir þær breytur sem hafa ekkert brottfall. Þannig að ef nemandi hefur brottfall á IslF10 en hefur gildi á hinum þremur breytunum þá reiknar ofangreind skipun meðaltalið af hinum breytunum þremur.

Skipunina hér fyrir ofan má ýmist skrifa beint inn í skipanaglugga (syntax) eða fara í gegnum valmyndir, þ.e. Transform/Compute


?

Ég er búinn að prófa Mean en ég er ekki sáttur við hvernig hún virkar. Eins og ég skil fallið þá myndi hún reikna meðaltal jafnvel þótt aðeins ein breyta væri án brottfall. Ég vil geta stjórnað þessu, t.d. fá meðaltal ef 1 eða 2 breytur eru með brottfall en láta breytuna sem ég reikna (Meðal) fá brottfall (missing value).

!

Hér eru margir möguleikar. Ég nefni nokkra þeirra hér fyrir neðan.

Ef þú vilt aðeins fá meðaltal ef engin breyta er með brottfall þá er einfaldast að gera það svona.

COMPUTE Meðal= (IslF10 + EnsF10 + DanF10 + StaF10)/4.

Ef þú vilt reikna meðaltal ef t.d. aðeins ein breyta er með brottfall, þá gætirðu gert það svona:

IF (NMiss(IslF10, EnsF10, DanF10, StaF10) <= 1) Meðal= Mean(IslF10, EnsF10, DanF10, StaF10).

Nota má Transform/Compute og smella síðan á takka merktan If.

Eða einfaldlega svona (taktu eftir „.3" sem skeytt er við fallið):

COMPUTE Meðal= Mean.3(IslF10, EnsF10, DanF10, StaF10).

Talan sem skeytt er við fallið stendur fyrir fjölda breyta sem verða að vera án brottfall svo meðaltal sé reiknað. Í ofangreindu tilviki er krafist þriggja breyta án brottfalls af þeim fjórum sem tilgreindar eru til að meðaltalið sé reiknað.

Einfaldast er að prófa sig áfram með þessa möguleika og sjá hvernig þeir virka í reynd. Þú getur búið til litla skrá með nokkrum brottfallsmynstrum til að prófa hegðun fallsins á eða prófað það beint í gagnaskránni sem þú ert að vinna í.

Hægt er að fá töluverða hjálp við föllin í SPSS með því að fara í Transform/Compute og hægrismella á viðkomandi föll.


 

Lesa inn hráskrá með DATA LIST skipun í SPSS

?

Það gengur ekkert hjá mér að reyna að koma skránni í verkefni 1 yfir í SPSS. Ég er búin að reyna að leita til annarra nemenda en þar er sama sagan. Málið er að mér tekst alveg að koma þessu inn í Word eða „Syntax" skrá en síðan get ég ekki komið því yfir í SPSS „data editorinn". Þú sagðir að hægt væri að nota „Data List" skipun en hana finn ég ekki nema í hjálpinni og skil ekki það sem þar er sagt um hvernig á að nota hana.

Með von um örlitla hjálp sem fyrst.

!

Taktu skrána inn í Word eða samsvarandi forrit og breyttu því sem þarf en gættu þess að vista það sem textaskjal í lokin.

Opnaðu SPSS og farðu í File/Read ASCII data og veldu þar Fixed Columns. Þá birtist eyðublað sem þú fyllir inn með upplýsingum um í hvaða dálkum breyturnar er að finna. [Ég er alltaf miða við útgáfu 7,5 sem er sú sem ég hef á minni tölvu. Ég á ekki von á breytingum þótt þú sért með útgáfu 8,0.]

Ýttu á takka merktan "Browse" og skrifaðu inn nafnið á skránni þinni. Þú ert númer 13 á nemendalistanum og velur því skrá númer 3! Skrifaðu því adfhsk03.hra á viðeigandi stað eftir að þú hefur ýtt á "Browse." Þú gætir þurft að gefa upp rétta slóð líka; einfaldast er því að finna skráarsafnið þar sem þú geymir adfhsk03.hra og smella á það. Þú gætir þurf að velja "All files" undir "File type" textareitnum til að sjá skrárnar. Ýttu á "Open" í lokin.

Fyrsta breytan heitir FYRSTU; ritaðu því "Fyrstu" í textareit merk "Name."

Mér sýnist breytan vera í dálkum 8 - 12 en þar sem einhver gæti haft 10,0 í einkunn rita ég 7 í "Start Columns" og 12 í "End Column". Síðan ýti ég á "Add."

Og svo framvegis fyrir hinar breyturnar. Þegar allar hafa verið skilgreindar skaltu ýta á "OK." Þú getur ýtt fyrst á "Paste" ef þú vilt (en þá birtist skipunin sem þú varst að byggja í Syntaxglugganum) og annað hvort keyrt skipunina í skipanaglugganum eða farið aftur inn í valmyndina til að keyra þetta.


?

Ég skil ekki hvað þú átt við þegar þú segir „dálkar" hér í svarinu á undan. Hvernig sérðu að FYRSTU eru í dálkum 8 - 12?

!

Dálkur er í rauninni það svæði sem einn stafur tekur (miðað við fasta stafastærð eins og í „Courier" leturfjölskyldunni). Ef þú skoðar skrána í t.d. NotePad, er fyrsti dálkur sama og fyrsti stafur í hverri línu, annar dálkur er annar stafur í hverri línu, o.s.frv.

Ef ég t.d. opna fyrstu skrána (AdfHsk01.HRA), þá byrjar fyrsta línan svona (ég tákna eyður með „"): „•••••••6.640,••" Það eru því sjö eyður (bil) áður en kemur að fyrstu tölunni og talan sjálf er 5 tölustafir (punturinn meðtalinn). Því tölum við um að talan byrji í 8. dálki, nai yfir 5 dálka og endi í dálki 12.

Til að telja út dálka, hef ég vanið mig á að opna hráskrár í NotePad; ég bæti línu efst með talnaröðinni sem auðveldar mér að telja út dálkana. Þegar ég er búinn eyði ég línunni aftur áður en ég loka skránni aftur (eða loka án þess að vista).

Svona lítur hjálparlínan út hjá mér:

123456789012345678901234567890123

Stundum nota ég tvær línur sem eru þá svona:

         1         2         3
123456789012345678901234567890123

Mundu að eyða hjálparlínunum úr hráskránni áður en þú lest gögnin inn í SPSS.