오랜만에 stata에 대한 질문을 받아서 이렇게 관련 글을 작성해본다.
재학중일 때, 그리고 졸업 직후에는 spss, stata 설치부터 다양한 질문들을 받고 해결해주었었는데 정말 오랜만이다.
descriptive statistics를 볼 때, 강력한 명령어가 있으니...
그것은 바로 bysort 이다.
패널데이터분석에서 패널회귀분석, DID 등 고급분석이 중요하겠지만, 그래도 논문 작성에서 빠질 수 없는 것이 바로 기술통계(descriptive statistics)에 관한 표 정리 아닌가.
이때 이 명령어가 빛을 발한다. 오늘은 다루는 김에 codebook, tabulate(tab), summarize(su)까지 다뤄보겠다.
이것을 마스터하고 응용하면,
STATA에서 결과에 원하는 옵션을 주어 출력하고, 그대로 .txt에 복사했다가, 한글 표에 붙여 넣으면 그냥 표 정리가 끝나는 매직 🪄
(1) 한국노동패널데이터 27차 개인 데이터 다운로드 (편집본)
- 샘플 데이터에는 [pid(개인고유번호), sex(성별), 만나이(age), 전반적 일 만족도(work_satis), 전반적 생활만족도(overall_life_satis)]만을 변수로 남겼다.
- 나이는 15~103세까지 있는데, 이것을 '10대/20대/30대/40대/50대/60대/70대 이상' 이런 식으로 묶는 연습도 해보시라. (recode age (15/19=10) (20/29=20) ..., gen(age_group))
(2) codebook
- KLIPS는 친절하지 않지만, 보통은 코드북에 값 정보가 함께 나온다. 1 남자, 2 여자 이런식으로.
(codebook에서 확인이 어렵다면, 홈페이지 데이터 다운로드 페이지에서 엑셀 '코드북'을 다운로드 받거나 '유저가이드'를 보면 된다.)
- 추가를 해주고 싶으면 label(la) 설정을 해주면 되는데, 지금은 그게 중요하지 않으므로 넘어간다.

(3) Tabulate(tab)
- 빈도, 퍼센트, 누적퍼센트


- 혹시 성별의 총 사례수가 23,164인데 교차테이블의 총 사례수는 12,969라서 의문이 생기신 분이 계시다면...
그건 '취업' 상태인 사람을 대상으로 한 것이기 때문에, 미취업자는 빠져서 그런 것으로 해석할 수 있다. 다른 문항을 통해 더블 체크를 할 수도 있다.
(4) Summarize(su)
- 관찰된 수, 평균, 표준편차, 최소값, 최대값

(5) bysort
- help bysort 하면 볼 수 있는 매뉴얼을 함께 첨부드린다. 더 알고 싶은 분은 'STATA 17 전체 매뉴얼'까지 보시길 !

- 먼저 차이를 보기 위해, 전반적 생활만족도(overall_life_satis) 변수의 tabulate 결과를 보여드린다.

- 자, 이제 성별(sex)에 따라 전반적 생활만족도(overall_life_satis) 변수의 tabulate 결과를 보여드린다.

- if 조건을 주어 원하는 결과만 추출 할수도 있다.
- 나는 이것을 알고, 표 정리가 한결 편해져 하루만에 논문에 들어가는 표를 모두 정리했었다. 😄
예를 들면, 이런 표도 금방 만들 수 있다.

이제 쓸일이 거의 없는 Stata이지만, 논문쓰는 두 학기동안 다양한 패널데이터를 다뤄본 경험은 없어지지 않는 것 같다. 😌
윈도우용 STATA 17 (MP버전) 영구 라이센스 설치파일을 가지고 있습니다.
(맥용은 영구가 아니었는데 시리얼넘버 기한이 만료되었습니다.)
이미 주변에는 여러번 설치해주었지만, 논문 작성에 필요한데 구하기 어려우신 분이 계시다면 도움 드리겠습니다. 🙌🏻
(SPSS는 윈도우용 23버전을 가지고 있습니다.)
'Concept Notes > Statistics & Stata' 카테고리의 다른 글
| [Stata] 초보자를 위한 데이터 전처리부터 회귀분석까지 정리 (0) | 2026.03.26 |
|---|---|
| Python vs SPSS vs Stata, 무엇을 배워야 할까? (0) | 2026.02.19 |
| [Stata] 한글 Label 깨짐, 인코딩 하기 (0) | 2021.05.19 |