2016-06-02 10 views
0
in den höchsten Quartil fallen

IWie eine kumulative Variable für Beobachtungen zu erzeugen, die

4 Variablen
  • Höhe
  • Gewicht
  • Länge der Arme
  • Länge der Beine

Ich möchte eine Variable (new_var) erstellen, die eine zusammenfassende Zahl gleich der Anzahl ist, die mein Observ ationen fallen in das höchste Quartil jeder Variablen.

Wenn Sie zum Beispiel im höchsten Quartil für eine (und nur eine) der obigen Variablen punkten, wird Ihr Wert in new_var eins sein. Wenn Sie in der höchsten Quartile in 2 Variablen (ich bin egal, wenn die zweite & die fünfte ist die erste & die zweite) Sie werden 2 in new_var und so weiter. Es gibt mehrere mögliche Kombinationen.

Die Idee ist, dass die Anzahl der Variablen, für die die Bewertungen des Teilnehmers in das höchste Quartil fallen, addiert wird, um eine Zusammenfassungsnummer zu erstellen.

Antwort

2

Wenn alles, was Sie wissen wollen, ist, ob die Werte über die sind Oberes Quartil oder nicht, können Sie summarize direkt verwenden. Achten Sie auf fehlende Werte in einer beliebigen Variablen.

sysuse auto, clear 

gen score = 0 

quietly foreach v in trunk displacement length weight { 
    su `v', detail 
    noisily di "`v'{col 20}" r(p75) 
    replace score = cond(missing(`v'), ., score + (`v' > r(p75))) 
} 

tab score 
2

Sie können alle von Null verschiedenen Variablen mit dem Namen Partitur erstellen und fügen Sie 1, um es jedes Mal eine Beobachtung für eine Variable im oberen Quartil liegt:

sysuse auto, clear 
gen score = 0 
foreach var of varlist price mpg weight headroom { 
    xtile q = `var', nq(4) 
    replace score = score + cond(q==4,1,0) 
    drop q 
} 
tab score 
Verwandte Themen