2013-09-30 1 views
2

많은 수의 또는 "|"에 의지하지 않고도 if 표현식을 쓸 수 있기를 원합니다. 연산자. 예를 들어 : (명령) x == 목록에 stata가있는 경우

drop if x==one of (1,3,5,7) 

내가 for 루프가 작동 실현하지만 매우 깔끔한 해결책이 아니다 :
drop if x==1 | x==3 | x==5 | x==7 

이 예를 작성하는 간단한 방법이있다.

답변

2

당신은 정확하게 내가 원하는 무엇을 그

sysuse auto 



    tab rep78 

    Repair | 
Record 1978 |  Freq.  Percent  Cum. 
------------+----------------------------------- 
      1 |   2  2.90  2.90 
      2 |   8  11.59  14.49 
      3 |   30  43.48  57.97 
      4 |   18  26.09  84.06 
      5 |   11  15.94  100.00 
------------+----------------------------------- 
     Total |   69  100.00 
keep if inlist(rep78,1,2,3) 

tab rep78 

    Repair | 
Record 1978 |  Freq.  Percent  Cum. 
------------+----------------------------------- 
      1 |   2  5.00  5.00 
      2 |   8  20.00  25.00 
      3 |   30  75.00  100.00 
------------+----------------------------------- 
     Total |   40  100.00 
+0

에 대한 inlist을 사용할 수 있습니다, 감사합니다! –

+0

문제 없음 ..... – Metrics

관련 문제