Seite 1 von 1

Mittelwerte in Diagramm vergleichen

BeitragVerfasst: Fr 12. Okt 2012, 06:23
von emwen
Hi Leute,
ich bin leider ein absoluter SPSS Anfänger.
Hier meine Frage:
Ich habe mehrere Variablen, die likert skaliert sind, also quasi einen ganzen Satz. Jetzt würde ich gerne die Mittelwerte dieser Variablen in einem Diagramm mit den Mittelwerten aus anderen Variablen vergleichen.

Im Klartext: Ich habe eine vorher nacher Untersuchung gemacht und würde am liebsten zwei Linien zeichnen, eine mit den variablen von vorher und eine mit der abweichung nachher.

Zur Veranschaulichung:
http://imageshack.us/photo/my-images/23/91911677.png/
Über diese Linie soll eine zweite kommen mit den Werten von den variablen nachher

Wer eine Lösung weiß, ich wäre sehr dankbar
glg

Re: Mittelwerte in Diagramm vergleichen

BeitragVerfasst: Di 8. Jan 2013, 11:15
von sipemu
Hallo,

Für dich ist die Antwort wahrscheinlich zu spät, jedoch hilfreich für einen Nachfolgenden mit dem selben Problem:

Zunächst erzeuge ich einen Testdatensatz (dieser Teil ist von: http://stats.stackexchange.com/question ... -r-or-spss)

Code: Alles auswählen
****************************************.
* erstelle die Datendatei.
input program.
loop #i = 1 to 82.
compute case_num = #i.
end case.
end loop.
end file.
end input program.
execute.
dataset name likert.

*Teile die Daten in 2 Gruppen ein.
compute group = 1.
if case_num > 43 group = 2.
value labels group
1 'A'
2 'B'.

*erzeuge 5 Variablen und fülle diese mit Werten zwischen 0 und 5.
vector V(5).
do repeat V = V1 to V5.
compute V = TRUNC(RV.UNIFORM(0,6)).
end repeat.
execute.

value labels V1 to V5
0 'missing'
1 'very disagree'
2 'disagree'
3 'neutral'
4 'agree'
5 'very agree'.
formats case_num group V1 to V5 (F1.0).
*****************************************.


Anschließend berechnen wir für jede Variable und Gruppe mittels des aggregate-Befehls die Mittelwerte und speichern dies in einem neuen Datenset:
Code: Alles auswählen
DATASET DECLARE mean_lik.
AGGREGATE
  /OUTFILE='mean_lik'
  /BREAK=group
    /V1=MEAN(V1)
  /V2=MEAN(V2)
  /V3=MEAN(V3)
  /V4=MEAN(V4)
  /V5=MEAN(V5).
dataset activate mean_lik.

Geht auch per Mausklicken: Daten -> aggregieren. Dort als Break-Variable group einsetzen und unter Aggregierte Variable V1 bis V5 einfügen.

Um am Ende Linien zeichnen zu können werden die Daten neu angeordnet:
Code: Alles auswählen
varstocases
/make V from V1 to V5
/index orig (V).


Nun können wir die Grafik zeichnen. Ich habe zunächst ein gruppiertes Liniendiagramm erstellt und anschließend in den Code noch die Zeile mit dem Punktdiagramm eingefügt:
Code: Alles auswählen
* Diagrammerstellung.
GGRAPH
  /GRAPHDATASET NAME="graphdataset" VARIABLES=orig V group MISSING=LISTWISE REPORTMISSING=NO
  /GRAPHSPEC SOURCE=INLINE.
BEGIN GPL
  SOURCE: s=userSource(id("graphdataset"))
  DATA: orig=col(source(s), name("orig"), unit.category())
  DATA: V=col(source(s), name("V"))
  DATA: group=col(source(s), name("group"), unit.category())
  COORD: rect(dim(1,2), transpose())
  GUIDE: axis(dim(1), label("Items"))
  GUIDE: axis(dim(2), label("Mittelwert"))
  GUIDE: legend(aesthetic(aesthetic.color.interior), label("Gruppen"))
  SCALE: linear(dim(2), min(0), max(5))
  SCALE: cat(aesthetic(aesthetic.color.interior), include("1", "2"))
  ELEMENT: line(position(orig*V), color.interior(group), missing.wings())
  ELEMENT: point(position(orig*V), color.interior(group))
END GPL.


Die daraus erhaltene Grafik kann man dann noch seinen Ansprüchen entsprechend grafisch anpassen.



Ich hoffe das hat geholfen.