주어진 dataset을 원하는 변수에 따라 새로 정렬하려면 어떻게 할까요. sort command를 사용합니다.
sort benef_code
그러면 benef_code의 값이 작은 것부터 오름차순으로 정렬이 되겠지요.
tab command는 범주형 자료에 유용한 빈도값을 요약해줍니다. tab command와 generate() option을 함께 사용하면 각각에 해당하는 더미변수를 생성하지요. 예컨대
tab group, gen(g)
는 각각의 group에 해당하는 더미변수 g1, g2, g3,...를 만들어 냅니다.
generate 혹은 gen command는 주어진 dataset에 없는 변수를 새로 만들어낼 때 사용합니다.
gen 변수명 = 변수의 내용
예컨대
gen gpm=1/mpg
와 같이 수식을 통해 변수를 생성할 수도 있고,
gen bigsize=1 if weight>300
와 같이 조건을 붙일 수도 있습니다.
한편, 위와같이 수식을 통해 변수를 생성할 때, 기존 data 상의 결측값에 대해서는 새로운 변수가 생성되지 않습니다.
gen이 dataset 내 변수의 단순한 변형의 형태인 변수를 만들어내는데 사용된다면, egen은 조금더 복잡한 함수를 거친 변수를 만들어내는데 사용됩니다. 따라서
egen 새로운 변수명=함수(기존 변수명)
의 형태로 나타나며, 이때 사용될 수 있는 함수에는 mean, count, max, median, rank 등이 있습니다. 또한, egen은 결측값에 대해 새로 만들어진 변수의 값을 자동적으로 0으로 처리하는 특징이 있습니다.
gen rand=runiform()
은 [0,1) 사이에서 임의의 숫자를 생성합니다. 전체 dataset에서 임의의 샘플을 뽑아서 사용할 때 유용하지요.
. gen select68=1 if rand<=.50 & yr2002==0
. gen select02=1 if rand<=.50 & yr2002==1
/*comparing the results of random sample selection to the full data sets*/
. histogram age_mom if select68==1, width(1) normal
. histogram age_mom if select02==1, width(1) normal
이를 통해 1968년과 2002년의 데이터를 비교할 수 있습니다.
마지막으로 ren command는 변수명을 변환할 때 사용합니다.
ren benef_code old_benef_code
와 같은 식이지요.
이 포스팅이 마음에 드셨다면 공감 버튼을 눌러주세요.
로그인 하지 않으셔도 공감하실 수 있답니다.
'방법론 공부 > 계량통계 방법론' 카테고리의 다른 글
[STATA] local command를 이용해 파일 디렉토리 지정하기 (0) | 2015.03.10 |
---|---|
[STATA] 관측치에 대해 고유값 부여 - gen number=_n, _n, _N (0) | 2015.03.10 |
[STATA] STATA에서의 매크로(2) - foreach, forvalue, levelsof (0) | 2015.03.10 |
[STATA] STATA에서의 매크로(1) - local, global (0) | 2015.03.09 |
[STATA] STATA 관련 파일 확장자들 - dta, do, log (0) | 2015.03.07 |