我的代码是这样的:
forvalues t = 1/100 {
keep if Country == Country[`t'] & Country_Twin_n == Country_Twin_n[`t']
drop if Benchmark == Benchmark[`t'] & Pair_n != Pair_n[`t']
还有,我也可以不用行数来定位。在我的原始dataset里面,有一个变量是Number,就是和行数相对应的,第n行的Number的取值就是n。也就是说假如先drop掉了一些observations的话,Number会大于当前的行数,假如该观测值之前有被drop掉的。
drop和keep可不可以有更复杂点的条件呢?比如 drop if 某个variable的取值大于(或等于,或小于)Number取值为k的那条记录的对应的variable取值?
举个例子,比如有两个variable:Number和Price。可不可以keep或drop价格高于4号观测值的所有观测值?