본문 바로가기

stata

데이터의 분포를 어떻게 보여줄까 - Histogram vs. Boxplot Boxplot Boxplot은 outlier를 제거하고 사분위수를 이용하여 가운데 50% 의 데이터를 통해 그래프를 생성한다. 이를 통해 중앙값을 비롯한 각 사분위수의 범위,최대값, 최소값을 알 수 있습니다. HistogramHistogram은 전체 데이터에 기초하여 측정값이 존재하는 범위를 몇 개의 구간(급)으로 나눈 경우,각 구간에 해당하는 데이터의 총 갯수를 보여준다. 상대도수를 모두 합하면 1이 된다. 각 막대 간에는 간격이 없으며, 많은 경우 값들은 정규분포를 따르는 것처럼 보인다. 이를 통해 데이터의 범위, 데이터가 집중된 곳이나 대칭성 등을 알 수 있다. 단, 데이터 자체의 측정값들은 그래프에 나타나지 않습니다. 출처: http://www.jmp.com/support/help/Options_.. 더보기
[STATA] 문자열 관련하여 유용한 기능들 - ltrim, itrim, rtri, abbrev, proper, upper, lower ltrim() & itrim() & rtrim() 각각 문자열의 왼쪽, 중간, 오른쪽에서 빈공간을 없애줍니다. abbrev(#) 지정한 숫자에 맞게 문자열을 잘라서 약어로 만들어줍니다. proper()문자열의 첫 번째 알파벳을 대문자로 만들어줍니다. upper()문자열의 모든 알파벳을 대문자로 만들어줍니다. lower() 문자열의 모든 알파벳을 소문자로 만들어줍니다. 더보기
[STATA] 원하는 문자를 추출하고 바꾸는 정규표현식(regular expression) - regexm, regexr, regexs regular expression, 즉 정규표현식이란 특정한 규칙을 가진 문자열의 집합을 표현하는데 언어입니다. 프로그래밍에서 많이 사용되기도 하는데, 문자열의 검색과 치환을 위한 용도로 많이 쓰입니다. regexmregexm()은 문자변수에서 찾고자하는 정보가 있으면 1 그렇지 않으면 0의 값을 만들때 유용합니다.gen 새로운변수명 =regexm(기존변수명, "찾고자하는문자열") 예컨대 다음의 command는 brand라는 변수에서 BMW가 몇 개나 있는지 찾아서 이에 해당하는 더미 변수를 만듭니다. gen BMW=regexm(brand, "BMW")tab BMW regexrregexr은 원하는 문자열을 찾아서 새로운 문자열로 대체합니다. gen 새로운변수명=regexr(기존변수명, "대체하고자하는문자.. 더보기
[STATA] 두 개 이상의 분포 비교하기 - Box plot Boxplot의 정확한 명칭은 box-and-whisker plot으로, dataset의 분포를 보여주기 위해 사용되는 그래프의 일종으로, 다음과 같이 생겼습니다. STATA에서의 기본 command는 다음과 같습니다. graph box 변수1 변수2 변수3 한편, 이는 변수 카테고리가 x축에 위치해서 y축에 통계값이 나타나는 그래프이고, 반대로 변수 카테고리가 y축에 위치한 boxplot을 그리기 위해서는 다음과 같은 command를 사용합니다. graph hbox 변수1 변수2 변수3 변수1, 변수2, 변수3은 하나의 boxplot 그래프 안에서 다른 색깔로 그려집니다. 카테고리와 그래프 순서 그리고 over() option을 사용하면 전체 데이터를 over() option 에 따라 지정된 변수라는 .. 더보기
[STATA] 카테고리에 따라 데이터 정렬 혹은 생성 - sort, gsort, by, bysort 많은 STATA commands들은 개별 변수 내의 group 별로 처리되고는 합니다. sortsort command는 다음에 지정된 변수를 기준변수로 하여 오름차순(ascending order)으로 표본들을 정렬합니다. 두 개의 변수가 지정된 경우에는 2번째 변수는 2순위 기준변수가 됩니다. 한편, 문자열 변수인 경우인 경우에는 영어는 알파벳순, 한글은 가나다순으로 정렬됩니다.. sort company year gsort gsort command는 -와 함께 사용하여 지정된 변수를 기준변수로 하여 내림차순(descending order)으로 표본들을 정렬합니다. 다음의 command는 company 변수의 표본들을 기준으로 내림차순으로 정렬합니다.. gsort -company byby command는 .. 더보기
[STATA] 히스토그램과 instant command - histogram, scatteri 하나의 STATA do-file 일부를 살펴보면서 histogram, twoway histogram, scatteri command 등에 대해 알아보겠습니다. twoway (histogram foreign, discrete width(5) percent ytitle(percent of sites) ///xtitle("foreigners") xlabel(, angle(zero) tposition(inside)) ///title("Distribution of percent of foreigners")) ///(scatteri 0 13 25 13, c(l) m(i) legend(off) ///note("Note: Red line is the average (13).")) save "`figurepath'dis.. 더보기
[STATA] 정말 유용한 egen row: mean, sum, total, max, min, tag, group, concat, cut egen command를 통해 활용할 수 있는 함수들을 몇 가지 알아보겠습니다. mean() egen mean_price = mean(price), by(store_id) 이는 각각의 store_id에 대하여 price의 평균값을 mean_price라는 새로운 변수로 저장합니다. 예컨대 각각의 store 물건 가격의 평균값이라고 할 수 있지요.이때, 관측치에 결측값이 있으면 mean을 구하지 못합니다. rowmean() . egen avg = rowmean(a_score b_score c_score) 이는 각각의 관측값에서 서로 다른 변수 a_score,b_score,c_score 간의 평균값을 계산해서 새로운 변수로 저장합니다. 예컨대 a,b,c가 수학, 과학, 영어 점수일 때, 전과목의 평균치를 구할.. 더보기
[STATA] 관측치 고유성/중복 확인 - isid isid command는 각각의 변수들이 고유한 관측치들을 나타내는지를 확인하는 데에 쓰입니다. . isid mpg 그런데 variable mpg does not uniquely identify the observations r(459); 와 같은 결과가 나타났다면 동일한 mpg가 있다는 겁니다. 동일한 관측치가 나타난 것을 안다면 이를 확인하는 법은 _N를 통해 살펴보았었죠. .sort mpg.by mpg: generate nobs = _N.list make mpg if nobs >1, sepby(mpg) 하나의 예시를 더 살펴볼까요. 패널데이터에서 두 개의 관측치가 중복적으로 입력되었을 수 있겠죠. 이를 확인하기 위해 다음과 같은 command를 실행합니다. . isid company year 아무 .. 더보기
[STATA] 파일 디렉토리 지정 - pwd, dir, cd STATA의 기본 작업 디렉토리는 c:\data이고, 현재 working directory를 확인하는 command는 다음과 같습니다.. pwd 따라서 파일을 불러들일 때 다음과 같이 매번 path를 지정해야 합니다. 이때 use command는 기본적으로 .dta,확장자,즉 dataset 파일을 인식합니다.) . use c:\intropov\data\hh 한편, 동일 디렉토리 내에서 반복해서 데이터를 불러들이거나 저장을 할 때, 작업 폴더를 한번 설정해놓으면 이후에 전체 경로를 지정하지 않아도 됩니다. cd c:\intropov\datause hh 또한, 작업한 파일을 저장하기 위해서도 따로 path를 지정할 필요가 없게됩니다. . save hh, replace 자신이 지정한 디렉토리 안에 있는 파일들.. 더보기
[STATA] local command를 이용해 파일 디렉토리 지정하기 나중에 파일 directory 구조를 바꾸거나 전체 파일들을 새로운 폴더로 옮겼을 때에서 do file이 제대로 작동할 수 있도록 STATA file들을 어떻게 정리할 것이냐. dataset은 "D:\project dir\data\data3\somedata.dta"에log file은 "D:\project dir\analysis\analysis1\analysis1X.log"에do-file은 "D:\project dir\analysis\analysis1\datado.do"에 위치한다고 합시다. 나중에 "project dir\old version\data\..."로 파일 버전들을 정리하고 싶을 때, 각각의 파일에 모두 들어가서 파일 directory를 바꾸는 것이 아니라 손쉽게 오류를 피하고 싶다면 어떻게 할.. 더보기