Hallo,
ich stehe vor einem riesigen Problem:
Bei meiner Paneldatenauswertung möchte ich das Produkt, das jeder Haushalt am meisten gekauft hatte, herausfiltern und anschließend diesem Produkt die Kennziffer 1 und allen anderen die Kennziffer 0 zuweisen.
Letzteres mache ich mit einem Recode-Befehl. Wie aber kann ich erstere Teilaufgabe umsetzen?
Dabei liegen die Daten in folgender Form vor:
Haushalt Produkt
1 a
1 b
1 a
1 c
2 c
2 b
3 d
Mein minikleiner Anfang ist folgendermaßen:
IF (hhnr EQ LAG(hhnr))
Aber ich komme und komme nicht weiter. Es wäre super, wenn mir jemand helfen könnte!
Vielen Dank!
Paneldatenanalyse - häufigster Kauf eines Haushalts
-
- Beiträge: 2
- Registriert: 08.09.2009, 08:48
-
- Beiträge: 114
- Registriert: 30.03.2009, 09:39
Hallo tinreh,
Falls ich Dich richtig verstanden habe, möchtest Du pro Haushalt das am meisten gekaufte Produkt kennzeichnen!?
Dann versuche mal die folgende Syntax:
Viele Grüße,
georggraph
Falls ich Dich richtig verstanden habe, möchtest Du pro Haushalt das am meisten gekaufte Produkt kennzeichnen!?
Dann versuche mal die folgende Syntax:
Code: Alles auswählen
COMPUTE Kennziffer = 0.
EXE.
AGGREGATE OUTFILE = * MODE=ADDVARIABLES OVERWRITE=YES /BREAK = Haushalt Produkt /N = N.
AGGREGATE OUTFILE = * MODE=ADDVARIABLES OVERWRITE=YES /BREAK = Haushalt /N_max = MAX(N).
IF (N = N_max) Kennziffer = 1.
EXE.
georggraph
"Ein kaum merkliches Kopfnicken verriet dann, dass er nicht die Absicht habe, diese Frage zu beantworten, und es war Sache des Fragestellers, seinen eigenen Fehler zu erkennen und die Frage neu zu formulieren." (F.Kafka: Der Verschollene)
-
- Beiträge: 2
- Registriert: 03.09.2009, 15:44
Hi. Hier noch mal eine "Menü-Antwort". Sicher unelegant, aber eventuell hilfts Dir ja weiter... Wenn ich es richtig verstanden habe, müsste es in etwa so gehen:
Nach Haushaltscode sortieren (eigentlich glaube ich nicht so wichtig, da dies zumindest bei SPSS 16 keine Rolle spielt, bzw. automatisch gemacht wird(??))
Daten > Aggregieren
Zusammenfassen von Variablen - dort gibst du die Variable für den Produktcode ein, klickst auf Funktion und wählst dort Maximum.
Als Break-Variable gibst du den Haushaltscode ein.
Die neue Variable hat dann das Maximum gespeichert.
Nun kannst Du über Variable berechnen einen Dummy berechnen, der 1 ist, falls es das meistgekaufte Produkt ist:
Dazu: Transformieren > Var. berechnen - Der Zielvariable einen Namen geben, unten Falls auswählen Bedingung eingeben, dass Max-Variable = Produkt-Code-Variable und einen numerischen Wert, z.B. 1, festsetzen. Das sollte dann eine Dummy-Variable erzeugen, wo das Maximum durch 1 indiziert ist, alle anderen sind fehlend. Wenn Du dort noch Nullen erzeugen willst, dann kannst du dies über Transformieren > Umkodieren in Andere oder Umkodieren in selbe tun, indem Du einfach alte Werte kopieren und für Sys-fehlend 0 als Vorschriften hinzufügst.
Ich hoffe dir ist damit geholfen...
Nach Haushaltscode sortieren (eigentlich glaube ich nicht so wichtig, da dies zumindest bei SPSS 16 keine Rolle spielt, bzw. automatisch gemacht wird(??))
Daten > Aggregieren
Zusammenfassen von Variablen - dort gibst du die Variable für den Produktcode ein, klickst auf Funktion und wählst dort Maximum.
Als Break-Variable gibst du den Haushaltscode ein.
Die neue Variable hat dann das Maximum gespeichert.
Nun kannst Du über Variable berechnen einen Dummy berechnen, der 1 ist, falls es das meistgekaufte Produkt ist:
Dazu: Transformieren > Var. berechnen - Der Zielvariable einen Namen geben, unten Falls auswählen Bedingung eingeben, dass Max-Variable = Produkt-Code-Variable und einen numerischen Wert, z.B. 1, festsetzen. Das sollte dann eine Dummy-Variable erzeugen, wo das Maximum durch 1 indiziert ist, alle anderen sind fehlend. Wenn Du dort noch Nullen erzeugen willst, dann kannst du dies über Transformieren > Umkodieren in Andere oder Umkodieren in selbe tun, indem Du einfach alte Werte kopieren und für Sys-fehlend 0 als Vorschriften hinzufügst.
Ich hoffe dir ist damit geholfen...