QUICK-Cluster Warnungen

Alles rund um SPSS Syntax und Programmierung.

QUICK-Cluster Warnungen

Beitragvon lanina » Do 7. Apr 2022, 11:53

Hallo,

ich führe bei mir gerade eine Clusteranalyse durch und bekomme bei folgendem Schritt Warnungen, die ich mir nicht erklären kann:

QUICK CLUSTER
ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER (1) MXITER (100) CONVERGE (.0001)
/METHOD=KMEANS (NOUPDATE)
/SAVE CLUSTER (c1) DISTANCE (d1)
/PRINT INITIAL ANOVA.

"Warnungen
Text: c1
Es wurden im Unterbefehl SAVE doppelte Schlüsselwörter oder Variablennamen verwendet.
Die Ausführung dieses Befehls wurde unterbrochen."


Kann mir da bitte jemand weiterhelfen, was ich ändern muss?
Die Variablen d1 und c1 werden mir in der Codemaske angezigt (hoffe, die Werte stimmen trotz Warnungen?). Allerdings bekomme ich in der Outputdatei keine Final Cluster Centers angezeigt.

Ich hoffe, ihr könnt mir weiterhelfen!

lanina
lanina
 
Beiträge: 14
Registriert: Do 7. Apr 2022, 11:43
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: QUICK-Cluster Warnungen

Beitragvon strukturmarionette » Do 7. Apr 2022, 13:30

Hi,

- die Analyse wäre über SPSS-Dialogfenster fehlerfrei

Gruß
S.
strukturmarionette
 
Beiträge: 2458
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 7
Danke bekommen: 122 mal in 122 Posts

Re: QUICK-Cluster Warnungen

Beitragvon lanina » Do 7. Apr 2022, 15:35

Hallo Strukturmotte,

danke für deine Antwort. Tatsächlich geht es mir nicht nur um die K-Means-Analyse, sondern auch um die Teststatistiken zur Bestimmung der Clusteranzahl. Deswegen habe ich es als Syntax geschrieben und nicht nur die K-Means über die Dialogfelder berechnet.

Das verrückte ist ja, dass der Befehl Sace ... anscheinend durch die neuen Spalten in meiner Codemaske ausgeführt wird - alllerdings im Output eben keine Cluster Centers angezeigt werden und stattdessen besagte Warnungen auftreten. Ich habe mir auch mal die Syntax der K-Means aus den Dialogfeldern ausgeben lassen - da gibt es keinen Savebefehl - ansonsten ist es nahezu identisch:
QUICK CLUSTER ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER(2) MXITER(100) CONVERGE(.0001)
/METHOD=KMEANS(NOUPDATE)
/PRINT INITIAL ANOVA CLUSTER DISTAN.

Da werden mir dann die Clusterzentren angezeigt. Ich würde aber gerne verstehen, wieso das mit dem Save-Befehl nicht klappt.


Das ist meine gesamte Syntax:

*Mittelwerte

means var= ev1 ev2 kv mv1.

*1 Clusterlösung

QUICK CLUSTER
ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER (1) MXITER (100) CONVERGE (.0001)
/METHOD=KMEANS (NOUPDATE)
/SAVE CLUSTER (c1) DISTANCE (d1)
/PRINT INITIAL ANOVA CLUSTER DISTAN.

*2 Clusterlösung

QUICK CLUSTER
ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER (2) MXITER (100) CONVERGE (.0001)
/METHOD=KMEANS (NOUPDATE)
/SAVE CLUSTER (c2) DISTANCE (d2)
/PRINT INITIAL ANOVA.

*3 Clusterlösung

QUICK CLUSTER
ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER (3) MXITER (100) CONVERGE (.0001)
/METHOD=KMEANS (NOUPDATE)
/SAVE CLUSTER (c3) DISTANCE (d3)
/PRINT INITIAL ANOVA.

*4 Clusterlösung

QUICK CLUSTER
ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER (4) MXITER (100) CONVERGE (.0001)
/METHOD=KMEANS (NOUPDATE)
/SAVE CLUSTER (c4) DISTANCE (d4)
/PRINT INITIAL ANOVA.

*5 Clusterlösung

QUICK CLUSTER
ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER (5) MXITER (100) CONVERGE (.0001)
/METHOD=KMEANS (NOUPDATE)
/SAVE CLUSTER (c5) DISTANCE (d5)
/PRINT INITIAL ANOVA.

*6 Clusterlösung

QUICK CLUSTER
ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER (6) MXITER (100) CONVERGE (.0001)
/METHOD=KMEANS (NOUPDATE)
/SAVE CLUSTER (c6) DISTANCE (d6)
/PRINT INITIAL ANOVA.

*7 Clusterlösung

QUICK CLUSTER
ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER (7) MXITER (100) CONVERGE (.0001)
/METHOD=KMEANS (NOUPDATE)
/SAVE CLUSTER (c7) DISTANCE (d7)
/PRINT INITIAL ANOVA.

*8 Clusterlösung

QUICK CLUSTER
ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER (8) MXITER (100) CONVERGE (.0001)
/METHOD=KMEANS (NOUPDATE)
/SAVE CLUSTER (c8) DISTANCE (d8)
/PRINT INITIAL ANOVA.

*9 Clusterlösung

QUICK CLUSTER
ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER (9) MXITER (100) CONVERGE (.0001)
/METHOD=KMEANS (NOUPDATE)
/SAVE CLUSTER (c9) DISTANCE (d9)
/PRINT INITIAL ANOVA.

*10 Clusterlösung

QUICK CLUSTER
ev1 ev2 kv mv1
/MISSING=LISTWISE
/CRITERIA=CLUSTER (10) MXITER (100) CONVERGE (.0001)
/METHOD=KMEANS (NOUPDATE)
/SAVE CLUSTER (c10) DISTANCE (d10)
/PRINT INITIAL ANOVA.

*Quadration von D1 bis D10

compute d1q=d1*d1.
compute d2q=d2*d2.
compute d3q=d3*d3.
compute d4q=d4*d4.
compute d5q=d5*d5.
compute d6q=d6*d6.
compute d7q=d7*d7.
compute d8q=d8*d8.
compute d9q=d9*d9.
compute d10q=d10*d10.

*die Streuungsquadratsummen werden berechnet. D1Q ist die Gesamtstreuung, D"q die Fehlerstreuung der 2 Clusterlösung etc...

means var=d1q to d10q/cells=sum.

*Elimination von Objekten, die wegen fehlender Werte nicht in die Clusteranalyse einbezogen wurden (dürfte bei mir nicht der Fall sein)

select if (c1=1).

aggregate outfile=* /*Die Daten werden aggregiert.
/break c1 /*Aggregierungsvariable
/nn = sum(c1) /*Fallzahl zur Berechnung von F-MAX
/dd1 to dd10 = sum (d1q to d10q). /* die quadrierten Distanzen werden aufsummiert.

*Eine neue Matrix befindet sich im Arbeitsspeicher. Sie besteht nur aus einem "Fall" und enthält Variablen c1, dd1 bis dd8 und nn. In dd (i) steht die Fehlerstreuung der i-Clusterlösung. dd1 ist gleich der Gesamtstreuung.

compute eta1=1-dd1/dd1. /*Berechnung der erklärten Streuungen entsprechend der im Text wiedergegebenen Formel.
compute eta2=1-dd2/dd1.
compute eta3=1-dd3/dd1.
compute eta4=1-dd4/dd1.
compute eta5=1-dd5/dd1.
compute eta6=1-dd6/dd1.
compute eta7=1-dd7/dd1.
compute eta8=1-dd8/dd1.
compute eta9=1-dd9/dd1.
compute eta10=1-dd10/dd1.

list var=eta1 to eta 10. /*Ausgabe der erklärten Streuungen

compute pre1=-99. /*Berechnung der PRE-Koeffizienten.
compute pre2=1-dd2/dd1. /*PRE für die 1-Clusterlösungen ist nicht definiert. Er erhält daher den Wert -99.
compute pre3=1-dd3/dd2.
compute pre4=1-dd4/dd3.
compute pre5=1-dd5/dd4.
compute pre6=1-dd6/dd5.
compute pre7=1-dd7/dd6.
compute pre8=1-dd8/dd7.
compute pre9=1-dd9/dd8.
compute pre10=1-dd10/dd9.

list var=pre1 to pre10. /*Ausgabe der PRE-Koeffizienten.

compute fmax1=-99. /* Berechnung der F-MAX-Statistiken
compute fmax2= ( (dd1-dd2)/(2-1) ) / (dd2 / (nn-2) ).
compute fmax3= ( (dd1-dd3)/(3-1) ) / (dd3 / (nn-3) ).
compute fmax4= ( (dd1-dd4)/(4-1) ) / (dd4 / (nn-4) ).
compute fmax5= ( (dd1-dd5)/(5-1) ) / (dd5 / (nn-5) ).
compute fmax6= ( (dd1-dd6)/(6-1) ) / (dd6 / (nn-6) ).
compute fmax7= ( (dd1-dd7)/(7-1) ) / (dd7 / (nn-7) ).
compute fmax8= ( (dd1-dd8)/(8-1) ) / (dd8 / (nn-8) ).
compute fmax9= ( (dd1-dd9)/(9-1) ) / (dd9 / (nn-9) ).
compute fmax10= ( (dd1-dd10)/(10-1) ) / (dd10 / (nn-10) ).

list var= fmax1 to fmax10. /*Ausgabe der F-MAX-Statistiken.


Viele Grüße
Lanina
lanina
 
Beiträge: 14
Registriert: Do 7. Apr 2022, 11:43
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: QUICK-Cluster Warnungen

Beitragvon strukturmarionette » Fr 8. Apr 2022, 04:15

Hi,

- also wenn 'save' nicht funktioniert, fehlen meist Schreibrechte im Zielordner oder die Datei, in die 'gesaved' werden soll, ist geöffnet.
- es müsste auch deine Computerconfiguration bekannt sein .. u.v.a

Und:
Warum nicht Hierarchische Cluster?

Gruß
S.
strukturmarionette
 
Beiträge: 2458
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 7
Danke bekommen: 122 mal in 122 Posts

Re: QUICK-Cluster Warnungen

Beitragvon lanina » Fr 8. Apr 2022, 10:06

Hi,

ich danke dir erstmal und werde das mal überprüfen. Mein N liegt bei 2076 das ist, soweit ich weiß, einfach zu groß für hierarchische Cluster.

Grüße
Lanina
lanina
 
Beiträge: 14
Registriert: Do 7. Apr 2022, 11:43
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: QUICK-Cluster Warnungen

Beitragvon lanina » Fr 8. Apr 2022, 12:25

Also ich habe das mal ausprobiert: Zieldatei war geschlossen - hat trotzdem nicht funktioniert.

Falls also noch jemand irgendeine Idee hat - bin ich sehr dankbar!

LG
lanina
lanina
 
Beiträge: 14
Registriert: Do 7. Apr 2022, 11:43
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: QUICK-Cluster Warnungen

Beitragvon strukturmarionette » Di 12. Apr 2022, 19:37

Hi,

"Warnungen
Text: c1
Es wurden im Unterbefehl SAVE doppelte Schlüsselwörter oder Variablennamen verwendet.
Die Ausführung dieses Befehls wurde unterbrochen."

- dann mal die Syntax des SAVE-Befehls nachlesen. Möglicherweise findet sich dort eine Erklärung.

Mein N liegt bei 2076 das ist, soweit ich weiß, einfach zu groß für hierarchische Cluster.

- das wäre mir neu.
- wichtig wäre allerdings, geeignete Clusteranalyserverfahren auszuwählen, die auf die Skalenniveaus deiner zu clusternden Variablen passen.

Gruß
S.
strukturmarionette
 
Beiträge: 2458
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 7
Danke bekommen: 122 mal in 122 Posts


Zurück zu SPSS Syntax

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron