개요: 자료관리/분석 업무 흐름
Entry Data Cleaning Data Analysis Presen1ng
Results Preserving your work
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 2
Planning the work!Organization: files & materials!Documentation!Executing!
Accuracy !Efficiency !Simplicity !
Standardization !Automation !
Usability!
계획, 정리, 문서화하기 Planning, Organizing & Documenting
• 계획하기 What? – 자료원, 변수명/라벨, 결측자료, 분석, 문서화, 백업
• 정리하기 – 프로젝트 시작부터 일찍하자 !! – 일관성(Consistency) 과 일치성(Uniformity) – 필요할때 찾을 수 있나??
• 문서화하기: 오늘하는것이 내일하는것보다 항상 빠르다. – 자료원, 자료변경결정사항, 통계분석, 소프트웨어……
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 3
이런 곤란한 상황들..
• 여러 버전의 파일들이 있어서 무엇이 무엇인지 알수가 없다. – 심정지_최종.exel, 심정지_last.exel, 심정지_최종수정.exel
• 원하는 파일을 찾을 수가 없다. 혹시 지워버렸나?
• 동료들과 내가 갖고 있는 파일 중 어느 것이 가장 최근것인가?
• 자료입력을 위한 질문지 파일이 두개다. ㅠ.ㅠ
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 5
큰 규모, 한명이 관리하는 프로젝트 Directory Contents
\Administra1on 프로젝트 운영을 위한 파일들
\Budget 예산관련 쉬트 , 파일
\Correspondence 중요한 편지/메일, 전달사항, 공문등
\Proposal 프로젝트 제안서/계획서 및 관련 자료
\Documenta1on 프로젝트 진행 사항 문서화 파일들
\Posted
\DataClean 정리된 자료
\DataSets \Derived 원자료에서 만들어진 자료원
\Source 변형되지 않은 초기 원자료
\DescStats 기술분석(descriptive)
\Figures 그래프 코드 및 파일
\PanelModels 모델링 분석을 위한 자료원
\Text 보고서 작성 파일
\Readings 참고문헌이나 자료
\Work 현재 작업중인 문서나 분석파일
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 7
\Work & \Posted: 지켜야 하는 원칙
• The Share Rule – 자료/결과 공유는 관련 파일/자료등을 전달한 후에만
• The no-change rule – 한번 보낸 파일은 절대 변경하지 않는다.
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 8
몇 가지 간단한 Tip
• 폴더이름에는 한글이나 공백은 넣지 말자! . use d:\Workflow\my data\auto.dta invalid `data’ r(198);
• 각 프로젝트를 기억하기 쉬운 축약된 이름으로! – cws: cohort, work and health – sdsc: sex differences in the scientific career
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 10
Documentation
1. The research log 2. Codebooks 3. Dataset documentation
• 오늘 당장 하고 나중에 확인한다.
• 문서화 파일들은 \Documentation 폴더에
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 13
Dual Workflow
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 18
data01.do
data01.dta
data02.do
data02.dta
data03.do
data03.dta
data04.do
data04.dta
stat01a.do
stat01b.do
stat01c.do
stat02a.do
stat02b.do
stat03a.do stat03b.do
자료관리
자료분석
• 자료관리 관련 do 파일은 분석과 독립적 • 분석관련 do 파일은 자료구조에 변화 X
실행: Master do-files
dual-dm.do
do data01.do do data02.do do data03.do do data04.do exit
dual-sa.do *descrip1ve sta1s1cs do stat01a.do do stat01b.do do stat01c.do *logit model do stat02a.do do stat02b.do *graph do stat03a.do do stat03b.do
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 19
Dual Workflow
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 20
data01.do
data01.dta
data02.do
data02.dta
data03V2.do
data03V2.dta
data04V2.do
data04V2.dta
stat01a.do
stat01b.do
stat01c.do
stat02aV2.do
stat02bV2.do
stat03aV2.do stat03bV2.do
자료관리
자료분석
실행: Master do-files
dual-dm.do
do data01.do do data02.do do data03V2.do do data04V2.do exit
dual-sa.do *descrip1ve sta1s1cs do stat01a.do do stat01b.do do stat01c.do *logit model do stat02aV2.do do stat02bV2.do *graph do stat03aV2.do do stat03bV2.do
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 21
do 파일 이름짓기
• 이름자체로 무슨작업을 수행하는지 알수 있으면 좋다.
• 입력하기 쉬워야 한다.
• Run order rule – 자료가 생성되고 분석이 진행되는 순서와 일치하도록 do-file
이름을 가나다(알파벳)순으로 지어야 한다.
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 23
do-파일 이름 서식
• project[-task]: 프로젝트 축약명 + 작업내용 cws-clean: cohort, work & health 프로젝트의 자료 클리닝
• step & [letter]: 두자리숫자(작업순서) + 알파벳문자(복잡한작업) cws-clean01, cws-clean02: cws프로젝트 자료클리닝 1번째/2번째 작업 cws-desc01a, cws-desc01b
• Version: 기존 do-파일의 수정/편집을 한 경우 기존파일에 추가 cws-desc01aV2.do: cws-desc01a.do 파일을 변경한 2번째 버전
• [-description]: 설명이 추가되어야 하면 끝에…… cws-desc01a-SES.do: cws 프로젝트 기술분석 중 사회경제수준변수만 분석
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 24
project [-task] step [letter] [Version] [-description].do
dataset 이름정하기
dataset-name##.dta • 중요한 점은 다른내용이 포함된 dataset 을 같은 이름으로
replace(대체)하지 않는 것이다.
• 현재 버전에서 약간의 변화라도 발생하면 dataset 의 버전을 하나씩 증가시켜 저장한다.
• 많은 자료가 저장이 될 수 있지만 현재 하드드라이브의 가격은 매우 저렴하다. 나중에 필요한 버전의 자료가 없어서 고생하는 것보다 낫다.
• 절대 dataset 이름에 최종(final)이라는 문구를 사용하지 않는다.
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 25
변수이름 정하기
• Clear, Informative & Easy to use
• 매우 따분한 작업이지만 잘못 이름을 만들었다간 나중에 매우 고생하게 된다.
1. Sequential naming systems: v1, v2 … , v59
2. Source naming systems: q1, q2, q3
3. Mnemonic naming systems: id, educ, female
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 26
변수이름 정하기: 원칙들
• 변수 탐색을 고려하여 이름을 정한다.
• 간단하고 모호하지 않게 정한다. – 되도록 짧게 정한다. (최대 12자, 변경표시를 대비 10)
– 간결하고 일관성있는 축약형태: ed ß education
– 변수값을 알수있는 변수명: gender à female
– 대문자 사용은 특수한 의미를 부여하여 사용한다.
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 27
Bad example Good Example
hsed, coled, phded edhs, edcol, edphd
friendsd, marrysd, worksd, neighbsd sdfriend, sdmarry, sdwork, sdneighb
변수명 내 대문자 의미부여
Le<er Meaning Example
B Binary variable highschlB
I Indicator variable edIhs, edIcol
L Value Labels used by mul1ple variable Lyesno
M Indicator of data being Missing educM
N a Nega1vely coded scale sdworkN (1=good, 2=neutral, 3=bad)
O not recommend to use
P a Posi1vely coded scale sdkidsP (1=bad, 2=neutral, 3=good)
S the unchanged Source variable educS, Seduc
V Version number for modified variables marstatV2
X a temporary variable Xtemp
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 28
반복되는 자료관리: 해결을 위한 도구들
• Macro
• Saved results • Loops • The include command
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 30
Macro
• 긴 문자열이나 숫자들을 축약하여 대치 logit y var1 var2 var3
local rhs “var1 var2 var3”
logit y `rhs’
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 31
summarize lfp k5 k618 age wc hc lwg inc logit lfp k5 k618 age wc hc lwg inc local myvar “lfp k5 k618 age wc hc lwg inc” summarize `myvar’ logit `myvar’
Loop 구문(1): 반복작업 패턴을 찾아라.
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 34
• 세금은 수입의 10%이다. 각 달마다 내야되는 세금변수(taxinc1~12)를 만들어라.
Loop 구문(1): 반복작업 패턴을 찾아라.
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 35
• 세금은 수입의 10%이다. 각 달마다 내야되는 세금변수(taxinc1~12)를 만들어라.
Loop 구문(2): 반복작업 패턴을 찾아라.
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 36
• 지난달보다 수입이 적으면 1 같거나 높으면 0 의 값을 갖는 변수(lowinc2~12)를 만들어라.
Loop 구문(2): 반복작업 패턴을 찾아라.
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 37
• 지난달보다 수입이 적으면 1 같거나 높으면 0 의 값을 갖는 변수(lowinc2~12)를 만들어라.
만약 (inc2 < inc1) à lowinc2=1 이다.
만약 (inc2 >= inc1) à lowinc2=0 이다.
Take Home message
• 자료를 관리/분석하는 것은 체계적이어야 한다.
• 계획/정리/문서화 하기는 따로따로가 아닌 동시에 통합된 원칙아래에서 이루어져야 한다.
• 자료조작과 분석작업은 별도로 하는 것이 중요하다.
• 자료관리/분석에는 왕도가 없지만 덜 고생하는 방법은 분명 존재한다.
April 2, 2015 2015 상반기 퇴원손상 및 심정지 조사팀 워크샵 38