SPSS-vraagje
vrijdag 28 oktober 2011 om 17:13
Normaal kan ik wel redelijk overweg met SPSS, maar nu heb ik eigenlijk geen idee of dit überhaupt wel mogelijk is.
Ik heb een dataverzameling. Per onafhankelijke variabele 1 en variabele 2 heb/wil ik minimaal 50 genummerde datapunten. Dus datapunt 1 heeft een waarde (voor variabele x, y, z), datapunt 2, datapunt 3. Elke van deze datapunten staan in een aparte rij en x, y, z in aparte kolommen. Nou hebben sommige combinaties van variabelen niet 50, maar minder datapunten. Wat ik zou willen is dat als er minder dan 50 datapunten zijn, bijvoorbeeld 45, datapunten 46-50 worden toegevoegd met standaardwaardes voor x, y, z. SPSS zou dus moeten kijken of elke combinatie van variabele 1 en 2 minder dan 50 punten heeft en zo ja, rijen toe moeten voegen met deze standaardwaarden.
Heeft iemand enig idee of dat mogelijk is? En zo ja, hoe dat kan? Het is een nogal grote dataset, dus handmatig toevoegen zou ontzettend lang duren. Het klinkt alsof het in ieder geval programmeerbaar zou moeten zijn, maar omdat ik geen held ben met scripten, hoop ik stiekem dat SPSS dit ook kan. Suggesties?
Ik heb een dataverzameling. Per onafhankelijke variabele 1 en variabele 2 heb/wil ik minimaal 50 genummerde datapunten. Dus datapunt 1 heeft een waarde (voor variabele x, y, z), datapunt 2, datapunt 3. Elke van deze datapunten staan in een aparte rij en x, y, z in aparte kolommen. Nou hebben sommige combinaties van variabelen niet 50, maar minder datapunten. Wat ik zou willen is dat als er minder dan 50 datapunten zijn, bijvoorbeeld 45, datapunten 46-50 worden toegevoegd met standaardwaardes voor x, y, z. SPSS zou dus moeten kijken of elke combinatie van variabele 1 en 2 minder dan 50 punten heeft en zo ja, rijen toe moeten voegen met deze standaardwaarden.
Heeft iemand enig idee of dat mogelijk is? En zo ja, hoe dat kan? Het is een nogal grote dataset, dus handmatig toevoegen zou ontzettend lang duren. Het klinkt alsof het in ieder geval programmeerbaar zou moeten zijn, maar omdat ik geen held ben met scripten, hoop ik stiekem dat SPSS dit ook kan. Suggesties?
If at first you don’t succeed, call it version 1.0
vrijdag 28 oktober 2011 om 17:21
Ha Daffodil,
Ik snap je uitleg niet helemaal... je wilt in totaal dus 150 values hebben? Namelijk waarden voor x y en z (kolommen) voor 50 cases (rijen). Maar wat bedoel je dan met die twee onafhankelijke variabelen? Of snap ik het toch niet?
Kijk eens of je wat kunt met Transform - recode into same variables - select variabele - old and new values, check system missing als old variabele en voeg de gewenste standaardwaarde in in het vak new value.
Ik snap je uitleg niet helemaal... je wilt in totaal dus 150 values hebben? Namelijk waarden voor x y en z (kolommen) voor 50 cases (rijen). Maar wat bedoel je dan met die twee onafhankelijke variabelen? Of snap ik het toch niet?
Kijk eens of je wat kunt met Transform - recode into same variables - select variabele - old and new values, check system missing als old variabele en voeg de gewenste standaardwaarde in in het vak new value.
vrijdag 28 oktober 2011 om 17:31
Ja, 150 values per combinatie van variabele 1 en 2 (en er zijn 2048 combinaties).
Het probleem is dat de missing variables niet in de dataset staan. Dus als er minder dan 50 cases zijn, staat case 1-45 (bijvoorbeeld) mooi in de set, maar na case 45 begint case 1 van de volgende combinatie. Er moeten dus echt rijen toegevoegd worden (en dat kan voor zover ik weet niet met recode).
Het probleem is dat de missing variables niet in de dataset staan. Dus als er minder dan 50 cases zijn, staat case 1-45 (bijvoorbeeld) mooi in de set, maar na case 45 begint case 1 van de volgende combinatie. Er moeten dus echt rijen toegevoegd worden (en dat kan voor zover ik weet niet met recode).
If at first you don’t succeed, call it version 1.0
vrijdag 28 oktober 2011 om 17:40
quote:zeniiba schreef op 28 oktober 2011 @ 17:35:
dat is duidelijker. Voor de zekerheid: het gaat dus om combinaties van waarden van variabele 1 en 2 (y & z? terwijl x de nummering van de cases is?), en voor iedere combi moeten er uitiendelijk vijftig cases zijn, dus in total 102400 cases?
*begint met nadenken*Ja! 2048*50 cases en iedere case (=rij) heeft een waarde in elk van 3 kolommen (=x/y/z).
dat is duidelijker. Voor de zekerheid: het gaat dus om combinaties van waarden van variabele 1 en 2 (y & z? terwijl x de nummering van de cases is?), en voor iedere combi moeten er uitiendelijk vijftig cases zijn, dus in total 102400 cases?
*begint met nadenken*Ja! 2048*50 cases en iedere case (=rij) heeft een waarde in elk van 3 kolommen (=x/y/z).
If at first you don’t succeed, call it version 1.0
vrijdag 28 oktober 2011 om 17:41
vrijdag 28 oktober 2011 om 17:43
vrijdag 28 oktober 2011 om 17:47
en wat zijn de mogelijke waarden van var 1 en 2? zijn dat oplopende series?
*in dat geval zou je misschien met een relatief kort loopend scriptje een bestand kunnen genereren dat voor iedere combi van 1 en 2 50 case/rijen aanmaakt, dat bestand mergen met je huidige bestand zo dat er rijen met missing value ontstaan voor de missende combi's en die dan weer aanvullen met recode?
*in dat geval zou je misschien met een relatief kort loopend scriptje een bestand kunnen genereren dat voor iedere combi van 1 en 2 50 case/rijen aanmaakt, dat bestand mergen met je huidige bestand zo dat er rijen met missing value ontstaan voor de missende combi's en die dan weer aanvullen met recode?
vrijdag 28 oktober 2011 om 17:56
Hmmm. Nee, variabele 1 is een string variable. Variabele 2 is wel oplopend, maar niet regelmatig. Wat ik wel kan doen denk ik is een geaggregeerde dataset maken met per variabele 1 alle waarden van variabele 2. En die kan ik dan copy-pasten en daar een casenummer aan toevoegen. En dan mergen. Ik heb nog nooit cases gemergd (wel kolommen), maar dit zou denk ik vrij vanzelfsprekend moeten zijn?
Jaaaaaa!
Jaaaaaa!
If at first you don’t succeed, call it version 1.0
vrijdag 28 oktober 2011 om 18:40
vrijdag 28 oktober 2011 om 18:58