Clusteranalyse

Hallo!

Ich habe ca 20000 Beobachtungen in einem Datensatz. Diesen Beobachtungen habe ich eine neue Variable hinzugefügt, durch welche ich ca 140 "Gruppen" erstellt habe. D.h. jede Beobachtung lässt sich einer dieser Gruppe zuteilen. Ich möchte meinen Datensatz (also den bereits in die Gruppen eingeteilte) nun weiter clustern.

proc aceclus data=a.daten8 out=Ace p=.03;
var GR BR;
run;

Mit diesem Code bekomme ich jedoch immer die 20000 Beobachtungen geclustert und nicht die 140 Gruppen :-/ - was mache ich falsch?

Danke für die Hilfe!

by statement

Hi Tatjana,

wenn ich dich richtig verstehe solltest du das by statement hinzufügen.
Beachte aber das du, wenn du ein by statement nutzen möchtest, deinen Datensatz nach der by variable sortiert haben solltest.
Also zuerst sortieren:

proc sort data=a.daten8 out=a.daten8_1; by groups; run;

Und dann anwenden.

proc aceclus data=a.daten8_1 out=Ace p=.03;
by groups; /*hier deine Gruppenvariable*/
var GR BR;
run;

Wenn du deine Prozedur nur auf eine besteimmte Gruppe anwenden möchtest könntest du diese auch vorher mit der where data set option filtern.

proc aceclus data=a.daten8_1 (where=(groups=5)) out=Ace p=.03;
by groups; /*hier deine Gruppenvariable*/
var GR BR;
run;

Wenn du diesen Code nutzt, müsstest du vorher nicht mal sortieren.

LG
Niko

Fehlermeldung

Hallo Niko,

erstmal vielen Dank! Bekomme aber leider eine Fehlermeldung :-/

Diese hier:

82 proc aceclus data=a.daten8_1 out=Ace p=.03;
83 by BerufBahnusePkw;
FEHLER: Variable BERUFBAHNUSEPKW nicht gefunden.
84 var GESREIS BAHNREIS;
85 run;

Weißt du vielleicht, was ich falsch gemacht haben könnte? Den Variablennamen habe ich richtig geschrieben (schließlich meckert er ja nicht beim sortieren nach dieser Variable....

Hi Tatjana, eine

Hi Tatjana,

eine Fehlermeldung "Variable nicht gefunden" deutet darauf hin, dass die Variable nicht im Datensatz "daten8_1" nicht vorhanden ist.

Schmeißt oder behälst (drop/keep) du spezielle Variablen in einem vorherigen Datenschritt?
Das könnte eine Ursache für das nichtvorhanden der Variable sein.

Ansonsten hoffe ich, dass du die Sortierung nicht "by groups", sondern "by BerufBahnusePkw" angewandt hast (wobei du ja sagtest dass er beim sortieren nicht gemeckert hat).

LG
Niko