2016-09-21 6 views
0

Angenommen, ich habe zwei Datensätze und möchte sie merge ihnen.Wie kann ich Variablen angeben, die Daten verwenden, die ich bei einer Zusammenführung nicht behalten möchte?

merge 1:1 key using "$root/datasetB" 

datasetB viele Variablen hat, aber ich möchte nicht einen spezifischen halten, sagen wir mal: unwanted_var

Ich weiß, ich könnte alle Variablen nur aufschreiben, die ich in der Option wollen keepusing, aber gibt es eine Möglichkeit, in den merge Befehl die Variablen aus der Verwendung von Daten, die ich wollen nicht halten? Das würde mir viel Tipparbeit ersparen.

Antwort

3

Hier ist eine Technik, die auf den Befehl use statt auf den Befehl merge angewendet wurde, aber das Prinzip ist in beiden Fällen dasselbe.

. sysuse auto, clear 
(1978 Automobile Data) 

. tempfile autodata 

. save `autodata' 
file /var/folders/xr/lm5ccr996k7dspxs35yqzyt80000gp/T//S_31836.000001 saved 

. ds 
make   mpg   headroom  weight  turn   gear_ratio 
price   rep78   trunk   length  displacement foreign 

. clear 

. quietly describe using `autodata', varlist 

. local allvars `r(varlist)' 

. local dropvars gear_ratio 

. local keepvars : list allvars - dropvars 

. use `keepvars' using `autodata' 
(1978 Automobile Data) 

. ds 
make   mpg   headroom  weight  turn   foreign 
price   rep78   trunk   length  displacement 

. 
Verwandte Themen