Summe einer Zeile mit Bedingung

Fragen und Diskussionen rund um die Arbeit mit SPSS. Für allgemeine Statistik-Themen, die nicht mit SPSS zusammenhängen, bitte das Statistik-Forum nutzen.
Antworten
NeR0
Beiträge: 1
Registriert: 26.12.2018, 17:09

Summe einer Zeile mit Bedingung

Beitrag von NeR0 »

Hallo zusammen,

Ich möchte Werte einer Zeile addieren, sofern eine Bedingung erfüllt wird.
Jede Zeile entspricht den Werten einer einzelnen Testperson.
Meine Zeilen sind folgendermaßen aufgebaut.

Eigenschaft A1---Eigenschaft B1---Bedingung1---Eigenschaft B2---Eigenschaft B2--- Bedingung2---Eigenschaft A3---Eigenschaft B3---Bedingung3---….
-------5--------------------10----------------X-----------------4------------------999-----------------Y----------------3---------------------6-----------------X----------...


Ich möchte nun jeweils die Summe aus allen Eigenschafen A bilden, falls Bedingung1/2... jeweils den Wert X besitzt UND Eigenschaft A nicht 999.
„999“ steht dabei für „keine Angabe“ und soll nicht summiert werden.

Weitere Berechnung der Summe aus allen Eigenschaften B, falls Bedingung 1/2...den Wert X besitzt UND Eigenschaften A und B nicht 999.

Wie kann ich diese Addition der Werte unter o.g. Bedingungen vornehmen oder wie kann/muss ich meine Tabelle umstellen, damit das möglich wird?


Mit bisher verwendeter Syntax werden die Werte der Eigenschaften nur summiert, wenn Bedingung1 erfüllt wird. Außerdem wird die Summenbildung abgebrochen, sobald eine Eigenschaft=“999“ Nachfolgende richtige Werte der Zeile werden dann nicht mehr in die Summe einbezogen.

Danke
AnnaMarlow
Beiträge: 2
Registriert: 08.01.2019, 14:00

Re: Summe einer Zeile mit Bedingung

Beitrag von AnnaMarlow »

Wenn eine Eigenschaft nicht in die Summe mit einbezogen werden soll kannst du als Work around die 999 als Missing definieren. Dann sollte sie nicht berücksichtigt werden.

Syntax:
mis val A1 B1 B2 A3 B3... (999).
exe.

Oder du codierst die 999 um in 0. Dann wird es den Wert der Summe nicht erhöhen.

Um deine Bedingung mit einzubinden kannst du als Syntax die "do if" Funktion davor setzten.
Syntax:
do if Bedingung1 = x.
compute neuvar = SUM(A1, B1).
end if.
exe.

Falls das mit der Missing Funktion in deinem Fall keine Option ist, kannst du natürlich die "do if" Funktion auch erweitern, indem du die Bedingung mit den 999 hinzufügst:

do if Bedingung1 = x AND A1 ne 999 AND B1 ne 999.
Hoffe das hilft
Anzeige:Statistik und SPSS: Die besten Bücher
Als Buch oder E-Book - Jetzt bestellen
spss datenanalyse
SPSS - Moderne Datenanalyse - Jetzt bestellen!
statistik datenanalyse
Statistik - Der Weg zur Datenanalyse - Jetzt bestellen!
Antworten