AMELIA II: A Program for Missing Data
James Honaker, Gary King, and Matthew Blackwell
Version 1.7.4
December 5, 2015
Version 1.7.4
December 5, 2015
Vignettes:
view-source:https://cran.r-project.org/web/packages/Amelia/index.html
- 1 Introduction
- 2 What Amelia Does
- 3 Versions of Amelia
-
4 A User's Guide
- 4.1 Data and Initial Results
- 4.2 Multiple Imputation
- 4.3 Parallel Imputation Using Multicore CPUs
- 4.4 Imputation-improving Transformations
- 4.5 Identification Variables
- 4.6 Time Series, or Time Series Cross Sectional Data
- 4.7 Including Prior Information
- 4.8 Diagnostics
- 4.9 Post-imputation Transformations
- 4.10 Analysis Models
- 4.11 The amelia class
- 5 AmeliaView Menu Guide
5 AmeliaView Menu Guide
아래에는 사용자 가이드로 돌아가서 참조(references)로 AmeliaView 메뉴를 설명한다. 사용자 안내서와 같은 원리가 AmeliaView에 적용된다. 유일한 차이는 프로그램과 상호작용하는 방법이다. GUI 또는 명령 라인 버전의 사용 여부, 동일한 기본 코드가 호출된다, 따라서 GUI를 사용하려는 경우에도 위의 명령 줄 중심 토론을 읽을 수 있다.
5.1 Loading AmeliaView
AmeliaView를 적재하는 가장 쉬운 방법은 R 세션에서 오픈해야 한다 그리고 따라오는 2개의 명령을 타이프한다:
> library(Amelia) > AmeliaView()
이것은 어떤 플랫폼에서든지 AmeliaView 윈도우를 가져올 것이다.
윈도우 운영 시스템에서, 데이크톱에서 AmeliaView를 실행하는 다른 방법이 있다. 이 버전을 설치하는 방법에 대한 안내서는 3.2 절을 보라. 설치하자마자, AmeliaView의 데스크톱 아이콘이 있을 것이다. 단순히 이 아아콘을 더블클릭한다 그러면 AmeliaView 윈도우가 나타난다. 만약, 어떤 이유로, 이런 접근은 작동하지 않는다면, 단순히 R 세션에서 열어라 그리고 위의 접근 방법을 사용하라.
5.2 AmeliaView에 데이터 셋 적재 (Loading a data set into AmeliaView)
AmeliaView는 많은 일반적인 포멧의 데이터를 적재할 수 있는 버튼을 가지는 시작 화면(Figure 13)을 로딩한다. 각 버튼은 데이터 셋을 선택하기 위한 윈도우를 가져올 것이다. 이런 버튼은 AmeliaView에 데이터를 적재하기 위한 가능한 방법의 부분 집합일 뿐임에 주의하라. File 메뉴 아래(Figure 14)에서, 더 많은 옵션을 찾을 것이다, 패키지(africa와 freetrade)에 포함된 데이터셋을 포함함). 당신은 콤마-분리된 값(.CSV), 탭-구분 텍스트(.TXT), Stata v.5-10 (.DTA), SPSS (.DAT), 그리고 SAS 변환 (.XPORT), 을 위한 가져오기 명령어(import commands)를 또한 찾을 것이다. CSV 파일을 사용할 때, Amelia는 파일은 헤드를 가진다고 가정한다(이것은, 변수 이름을 가리키는 데이터의 처음에 행이 있음).
Figure 13: AmeliaView 시작 화면 |
Figure 14: AmeliaViewFile와 가져오기 메뉴. |
또한 RData 파일에서 데이터를 적재할 수 있다. 만약 RData 파일이 하나의 data.frame 보다 더 많이 가진다면, 팝-업 윈도우는 당신이 적재하기를 원하는 데이터셋을 찾기 위해 요청할 것이다. file 메뉴에서, 당신은 기본 작업 디렉토리를 변경할 수 있다. 이것은 AmeliaView는 기본에서 데이터를 찾는 위치 그리고 전가 데이터셋을 저장하는 위치이다.
5.3 Variable dashboard
Figure 15: AmeliaView에서 중요 변수 대시보드. |
데이터셋을 적재하자마자, AmeliaView는 변수 대시보드(Figure 15)를 보여줄 것이다. 이 모드에서, 변수 테이블을 볼 것이다, 각 변수가 보여주는 현재의 옵션을 가짐, 약간에 요약 통계량이 따라옴. 열 헤드를 클릭함으로써 어떤 변수 열에서 이 테이블을 재정열할 수 있다. 이것은 아마도 명령에 도움을 줄 것이다, 평균 또는 결측 량으로 변수를 정열.
Figure 16: 변수 대시보드에서 오른쪽-클릭 메뉴를 통한 변수 옵션 |
오른쪽-클릭 컨텍스트 메뉴(Figure 16)에서 또는 Variables 메뉴를 통해서 각 변수의 옵션을 설정할 수 있다. 예로, "Set as Time-Series Variable"을 클릭하면 대시보드에서 지금 선택된 변수를 시계열 변수로 설정한다. 어떤 옵션은 다른 옵션이 활성화될 때까지 비활성화이다. 예로 당신은 시계열 변수를 설정할 때까지 전가에 지연 변수(lagged variable)를 추가하지 못할 것이다. 데이터에서 어떤 factor는 기본으로 ID 변수로 표시됨에 주목하라, factor는 ID 변수, 명목형 변수 또는 횡단면 변수를 설정하지 않고는 전가에 포함하지 않기 때문이다. 만약 factor가 이런 조건의 하나가 아니면, 붉은 표시가 변수 이름 다음에 나타날 것이다.
- Set as Time-Series Variable - 현재 선택된 변수를 시계열 변수로 설정. 하나의 변수 보다 더 많이 선택될 때 비활성화. 이것을 설정하자마자, 지연(lags)와 유도(leads)를 추가할 수 있고 타임 스플라인을 추가한다. 시계열 변수는 그것의 다음에 시계 아이콘을 가질 것이다.
- Set as Cross-Section Variable - 현재 선택된 변수를 횡단면 변수로 설정. 하나의 변수 보다 더 많이 선택됐을 때 비활성화. 이것을 설정하자 마자, 횡단면를 가지는 타임 스플라인과 상호작용할 수 있다. 횡단면 변수는 그것 다음에 사람 아이콘을 가질 것이다.
- Unset as Time-Series Variable - 변수의 시계열 상태를 제거. 이것은 어떤 지연(lags), 유도(leads), 또는 타임 스플라인을 제거할 것이다.
- Unset as Cross-Section Variable - 변수의 횡단면 상태를 제거한다. 이것은 타임 스플라인 그리고 횡단면의 어떤 상호작용을 제거할 것이다.
- Add Lag/Lead - 후방향("lag") 또는 전방향("lead")의 선택 변수의 버전을 추가한다. 위의 4.6.1을 보라
- Remove Lag/Lead - 선택된 변수에서 어떤 지연(lags) 또는 유도(leads)를 제거한다.
- Plot Histogram of Selected - 선택된 변수로 히스토그램을 그린다. 이 명령어는 하나의 페이지에 모든 히스토그램을 넣기 위해 시도할 것이다, 그러나 만약 9개의 히스토그램 보다 더 많이 요청하면, 여러 페이지에서 나타날 것이다.
- Add Transformation... - 선택 변수를 위한 변환 설정을 추가한다. 각 변수는 단지 하나의 변환만 가질 것이고 그리고 시계열과 횡단면 변수는 변환되지 않음에 주의.
- Remove Transformation - 선택된 변수의 어떤 변환을 제거한다.
- Add or Edit Bounds - 선택 변수의 논리 경계를 설정하기 위한 다이얼로그 박스가 열림.
5.4 Amelia Options
Variable 메뉴와 변수 대시보드는 변수-수준 옵션을 설정하기 위한 장소이다, 그러나 전역 옵션은 Options 메뉴에서 설정한다.
- Splines of Time with... - 이 옵션은, 만약 활성화되면, Amelia는 전가에서 지정한 수의 knots를 가지고 유연한 시간의 경향를 사용한다. knots가 더 높을 수록 추세 구조에서 변동은 더 크다, 그러나 그것은 추정에서 더 많은 자유도를 가질 것이다. 더 많은 정보는 위의 4.6 절을 보라.
- Interact with Cross-Section? - 시간 추이와 횡단면을 포함 그리고 상호작용. 이 상호작용은 시간의 추세가 매우 적절하게 사건에서 변화하도록 허용하는 방법이다. 0-수준 타임 스플라인 그리고 횡단면과 상호작용의 사용은 고정된 효과에서 사용과 동등하다. 더 많은 정보를 위해 위의 4.6 절을 보라.
- Add Observational Priors... - 개별 관측의 결측의 범위에 대해 사전 신뢰를 설정하는 다이얼로그 윈도우를 가져옴. 관측 사전에 대한 더 많은 정보를 위해, 4.7.2를 보라
- Numerical Options - EM 알고리즘의 허용 오차를 설정하는 다이얼로그 윈도우를 가져옴, 무작위 수 생성기의 시드 값, 수치 안정성을 위한 ridge prior, 그리고 논리 경계를 위한 재결정하는 최대 수.
- Draw Missingness Map - 결측 지도를 그림. 결측 지동의 더 많은 정보는 4.8.5를 보라.
- Output File Options - 전가 데이터 파일의 접두사 그리고 전가 수를 설정하는 다이얼로그를 가져옴. 만약 "mydata"로 접두사를 설정하면, 당신의 출력 파일은 mydata1.csv, mydata2.csv... 등이 될 것이다.
-
Output File Type - 전가 데이터의 포멧을 설정. 어떤 전가 데이터 셋 저장을 원하지 않는다면 (만약 원한다면, 예로, 단순히 진단에서 보기 위해), 이 옵션을 "no save"로 설정해라. 현재, 출력 데이터를 다음과 같은 형식으로 저장할 수 있다: Comma Separated Values (.CSV), Tab Delimited Text (.TXT), Stata (.DTA), R save object (.RData), or 또는 그것을 R 메모리에 잡아두기 위해. 이 마지막 옵션은 만약 당신이 AmeliaView를 R 세션에서 호출하고 그리고 출력으로 작업하기 위해 R 명령어 라인으로 돌아기기를 원하는 경우에만 동작한다. R 워크스페이스에서 그것의 이름은 파일 접두어가 될 것이다. Stata 출력에서 쌓이는 버전은 그들이 내장된 mi 툴을 가지고 작업할 것이다.
Figure 17: 옵션 메뉴
5.4.1 Numerical Options
Figure 18: 옵션 메뉴 |
- Seed - Amelia에서 사용될 무작위 수 생성기를 위한 시드를 설정. 만약 동일한 출력을 두번 가지는 것이 필요하다면.
- Tolerance - Amelia가 EM 알고리즘 수렴 검증에 사용하는 허용 오차의 수준을 적용. 매우 큰 데이터셋에서, 만약 전가 사슬이 수렴하지 않고 매우 긴 시간에서 실행한다면, 허용 오차의 증가는 수렴을 판단하기 위해 더 낮은 임계를 허용한다 그리고 더 작은 반복으로 사슬이 종료된다.
- Empirical Prior - 공변량을 축소하기 위해 데이터에 관측을 추가하는 사전(prior). 시작하기에 좋은 위치는 데이터셋에서 전체 관측 수의 약 0.5% 이다(4.7.1을 보라).
- Maximum Resample for Bounds - Amelia는 경계 안에 떨어지지 않는 어떤 원인을 제거함으로써 논리 경계를 적합한다. 이 값은 Amelia가 경계에서 전가를 설정하기 전에 경계를 적합하기 위해 시도할 경우에 시간의 수를 설정한다.
5.4.2 Add Distribution Prior
Figure 19: Add Distributional Prior 다이얼로그의 상세 |
- Current Priors - 분포 형태에서 현재 사전(prior)의 표, 변수와 사건 이름을 가짐. 그들을 선택한 다음 오른쪽-클릭 컨텍스트 메뉴로 사전을 제거할 수 있다.
- Case - 사전에 대해 설정을 원하는 사건 이름 또는 번호를 선택. 전체 변수을 위한 사전을 만들기 위해 또한 선택할 수 있다, 변수에서 어떤 결측 셀을 위한 사전을 설정. 사건 이름은 관측의 행 이름에서 생성된다, 관측의 횡단면 변수의 값 그리고 관측에서 시계열 변수의 값.
- Variable - 지정하기를 원하는 사전과 관련된 변수. 제공된 목록은 현재 선택된 관측에서 결측 값을 단순히 보여준다.
- Mean - 사전의 평균 값. 텍스트박스는 문자 또는 자릿수 구분자를 허용하지 않는다.
- Standard Deviation - 사전의 표준 편차. 텍스트박스는 문자 또는 자릿수 구분자를 허용하지 않는다.
5.4.3 Add Range Prior
Figure 20: Add Range Prior 다이얼로그의 상세 |
- Case - 사전 작업을 설정을 원하는 사건 이름 또는 번호를 선택. 또한 전체 변수에서 사전 작업을 위해 선택할 수 있다, 그 변수에서 어떤 결측 셀을 위한 사전을 설정. 사건 이름은 관측의 행 이름에서 생성된다, 관측의 횡단면 변수의 값 그리고 관측의 시계열 변수의 값.
- Variable - 지정하기를 원하는 사전과 연관된 변수. 목록은 현재 선택된 관측에서 결측 변수를 보여주기 위해서만 제공된다.
- Minimum - 사전의 최소 값. 텍스트박스는 문자 또는 자릿수 구분자를 허용하지 않을 것이다.
- Maximum - 사전의 최대 값. 텍스트박스는 문자 또는 자릿수 구분자를 허용하지 않을 것이다.
- Confidence - 사전의 신뢰 수준. 이것은 0과 1 사이에 있어야 할 것이다, 비포함. 이 값은 사전이 어떻게 확실해지는지 표현한다. 이 값은 1 이 될 수 없다, 주어진 범우에 절대 확신이 있을 지라도. 이것은 범위를 적당한 분포 사전(prior)으로 변환하기 위해 사용된다.
5.5 전가 및 검증 진단 (Imputing and checking diagnostics)
당신이 모든 관련된 옵션을 설정하자마자, 툴바에 있는 "Impute!" 버튼을 클릭함으로써 당신의 데이터를 전가할 수 있다. 윈도우의 하단 오른쪽 모서리에서, 전가 과정을 가리키는 프로그레스 바를 볼 것이다. 전가가 끝나자마자, 프로그레스 바가 있는 곳에 "Successful Imputation!" 메세지를 볼 것이다. 전가 데이터셋을 가지는 폴더를 열기 위해 이 메세지를 클릭할 수 있다.
전가하는 동안 에러가 있다면, 출력 로그는 팝-업될 것이고 그리고 당신에게 문제를 해결하는 방법에 대한 약간의 정보를 가지는 에러 메세지를 제공한다. 문제를 해결하자마자, 단순하게 다시 "Impute!"를 클릭하라. 에러가 없을 때 조차, Amelia가 어떻게 실행했는지 보기 위해 출력 로그 보기를 원할 것이다. 그렇게 하기 위해, 단순히 "Show Output Log" 버튼을 클릭하라. 로그는 R에서 amelia 함수를 호출하여 또한 보여준다. R 명령줄에서 같은 전가를 실행하기 위해 이 코드의 단편을 사용할 수 있다.
Figure 21: 성공적인 전가에서 Amelia의 결과를 보여주는 출력 로그. |
5.5.1 Diagnostics Dialog
Figure 22: 진단(Diagnostics) 다이얼로그의 상세. |
- Compare Plots - 관측(빨강)과 전가(검정) 데이터의 연관된 밀도를 보여줄 것이다. 전가된 값의 밀도는 모든 전가된 데이터셋 전체에서 평균 전가이다.
- Overimpute - 이것은 선택된 인취적인 결측의 집합 변수의 하나의 셀을 가지고 전체 데이터에서 Amelia를 실행할 것이고 그다음 참에 대한 그 전가의 결과를 검증한다. 결과 그림은 90%의 신뢰 구간을 가지고 참 값에 대한 평균 전가를 그릴 것이다. 이것들은 전가 모델의 육안 조사를 위한 y = x 선 위에 그려진다.
- Number of overdispersions - 과대산포 진단을 실행할 때, 당신은 사슬이 수렴하는 방법의 분명한 아이디어를 얻기 위해 몇 개의 과대산포 시작 점에서 전가 알고리즘을 실행할 필요가 있다. 여기서 과대산포의 번호를 입력한다.
- Number of dimensions - 과대산포의 진단은 전가 알고리즘의 경로의 차원을 그래픽 제약 때문에 하나 또는 두개의 차원으로 줄여야 한다.
- Overdisperse - 무작위로 시작되는 다중 시작 값에서 Amelia 알고리즘의 수렴을 육안으로 조사하기 위해 과대산포 진단을 실행하라.
5.6 Sessions
같은 데이터를 다시 전가한다면 시간을 절약하기 위해 AmeliaView의 세션을 저장함이 종종 도움이 된다. Save Session 버튼의 사용함으로써 단지 그것을 할 것이다, RData 파일에 모든 현재 설정(원본과 어떤 전가된 데이터를 포함)을 저장. 당신의 세션을 그러면 재적재할 수 있다, 같은 컴퓨터 또는 다른 것에서, 단순하게 Load Session 버튼을 클릭하고 관련된 RData 파일을 찾음으로써. 모든 설정이 저장될 것이다, 어떤 수행된 전가 포함. 그러므로, 전가 후에 세션을 저장한다면, 언제라도 그 전가를 적재할 수 있다 그리고 AmeliaView의 미래의 세션을 사용하은 그것의 진단을 볼 수 있다.
- PART 03
- NONE
댓글 없음:
댓글 쓰기