Nur bestimme Dyaden behalten

Fragen zu Stata Syntax und Do-Files.

Nur bestimme Dyaden behalten

Beitragvon M1990 » Di 24. Feb 2015, 13:04

Moin, moin zusammen,

ich arbeite seit Oktober mit STATA und stehe trotzt Literatur- und Webrecherche auf dem Schlauch.
Problem: Ich arbeite mit dem COW (http://www.correlatesofwar.org) Datensatz für IGOs. Dieser liegt u.a. im dyadischen Format vor, welches ich auch für meine Netzwerkanalyse brauche. Also etwa:
Code: Alles auswählen
ccode1 ccode2 igo1 igo2 igo3...
A B 1 0 0...
A C 0 1 0...
A D 0 01...
BA 1 0 0 ...
usw.

Da ich nur bestimmte Länder und deren Verbindungen untersuche, möchte ich auch nur entsprechende Dyaden behalten.
Meine erste Idee war folgende Syntax:
Code: Alles auswählen
#delimit ;
keep if ccode1==290|ccode1==310|ccode1==316|ccode1==317|
ccode1==355|ccode1==359|ccode1==360|ccode1==365|ccode1==366|
ccode1==367|ccode1==368|ccode1==369|ccode1==370|ccode1==372|
ccode1==373|ccode1==701|ccode1==702|ccode1==703|ccode1==704|
ccode1==705;
#delimt cr

Nun geht es allerdings darum, nur die Fälle zu behalten, in denen die Variable ccode2 die entsprechenden Werte besitzt, also etwa ccode1==290 und ccode2==310, usw. Ein entsprechender Block mit "drop if ccode2!= ..." löscht sämtliche Beobachtungen, was im Nachhinein betrachtet irgendwie klar ist :roll: .

Hat jemand einen Vorschlag, wie ich mein Vorhaben doch noch umsetzen kann?

Beste Grüße
M1990

EDIT:
Eine kurze Nacht brachte die Erleuchtung. Wenig elegant habe ich das ganze über eine Dummy-Variable gelöst. Falls jemand mal ein ähnliches Problem hat:
Code: Alles auswählen
generate easternbloc=0 //Dummyvariable ob untersuchtes Land (1) oder nicht (0)
replace easternbloc=1 if ccode2==290|ccode2==310|ccode2==316|ccode2==317
replace easternbloc=1 if ccode2==355|ccode2==359|ccode2==360|ccode2==365
replace easternbloc=1 if ccode2==366|ccode2==367|ccode2==368|ccode2==369
replace easternbloc=1 if ccode2==370|ccode2==371|ccode2==372|ccode2==373
replace easternbloc=1 if ccode2==701|ccode2==702|ccode2==703|ccode2==704
replace easternbloc=1 if ccode2==705
drop if easternbloc==0
M1990
 
Beiträge: 4
Registriert: Di 24. Feb 2015, 12:47
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Zurück zu Stata Syntax

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron