KTL cơ bảnXử lý dữ liệu

Phương pháp thay thế lặp MI – Multiple Imputation

3.4 Thay thế (Imputing)

Cú pháp cơ bản của lệnh mi impute chained là:

mi impute chained (method1) varlist1 (method2) varlist2… = regvars

Mỗi phương pháp xác định phương pháp nào được sử dụng để thực hiện thay thế cho danh sách biến đi kèm. Các phương pháp có thể được sử dụng gồm regress, pmm, truncreg, intreg, logit, ologit, mlogit, poisson, và nbreg. regvars là danh sách các biến dạng Regular được sử dụng như là biến giải thích (covariates) trong các mô hình thay thế (nhưng không được thay thế).

Và các tùy chọn cơ bản của lệnh là: add(N) rseed(R) savetrace(tracefile, replace)

Với

  • N là số lần thay thế được đưa vào dữ liệu
  • R là giá trị khởi đầu (seed) được sử dụng để tạo các số ngẫu nhiên. Nếu chúng ta không thiết lập nó thì chúng ta sẽ thấy kết quả thay đổi đôi chút ở mỗi lần chạy thay thế.
  • tracefile là tập dữ liệu mà ở đó lệnh mi impute chained sẽ lưu thông tin quá trình thay thế. Chúng ta sử dụng file này để kiểm tra tính hội tụ của phương pháp.

Trong ví dụ của chúng ta câu lệnh thay thế sẽ là:

mi impute chained (logit) urban (mlogit) race (ologit) edu (pmm) exp wage, add(5) rseed(4409) by(female)

 

KINH NGHIỆM CHỌN SỐ LẦN THAY THẾ

Câu hỏi đặt ra là bao nhiêu lần thay thế là hiệu quả. Trong nhiều trường hợp, người ta sử dụng 3 – 10 lần, tài liệu của Stata đề nghị số lần thay thế tối thiểu là 20, trong khi White, Royston, và Wood giả định rằng số lần thay thế tương đương với tỉ lệ % các quan sát bị missing. Gia tăng số lần thay thế sẽ làm tăng thời gian xử lí. Sau đây là vài kinh nghiệm để chọn số lần thay thế:

  • Bắt đầu với 5 lần thay thế
  • Tiếp tục thực hiện đến khi bạn tin rằng mình đã có kết quả phân tích.
  • Ghi chú thời gian xử lí từ khi bắt đầu thay thế đến khi có kết quả.
  • Xem xét khoảng thời gian bạn có và quyết định số lần thay thế bạn có thể chấp nhận chạy. Sử dụng quy tắc thời gian cần thiết tỉ lệ thuận với số lần thay thế. Nếu có thể, thì chọn số lần thay thế tương đương với tỉ lệ % các quan sát bị missing trong dữ liệu. Bạn cũng nên tính tới khoảng thời gian làm lại nếu quá trình thực hiện sai.
  • Gia tăng số lần thay thế trong dofile và chạy lại.
  • Thực hiện công việc khác khi dofile đang chạy, chẳng hạn viết nội dung. Việc thêm số lần thay thế không thay đổi kết quả đáng kể (ý nghĩa thống kê).

Để kiểm tra sự hội tụ của việc thay thế chúng ta kiểm tra file lưu lại thông tin của quá trình thay thế. File này bao gồm giá trị trung bình, độ lệch chuẩn của mỗi biến được thay thế trong mỗi lần lặp. Các dữ liệu này (mean, standard deviation) thay đổi ngẫu nhiên nhưng không hình thành bất kì 1 xu thế nào. Cách kiểm tra đơn giản nhất là sử dụng tsline nhưng đòi hỏi dữ liệu phải reshape.

Mô hình lựa chọn của chúng ta sử dụng tùy chọn by(), vì thế không thể tạo sử dụng tùy chọn tracefile để ghi lại thông tin xử lý. Vì vậy, chúng ta tạm thời không sử dụng tùy chọn by() để minh họa tính hội tụ của dữ liệu được thay thế. Chúng ta cũng gia tăng số lần số lần lặp trong tùy chọn burnin() là 100 để xem xu hướng ổn định như thế nào. Sau đó sử dụng reshapetsline để kiểm tra tính hội tụ của dữ liệu thay thế. Đoạn lệnh sau sẽ thực hiện điều này:

preserve
mi impute chained (logit) urban (mlogit) race (ologit) edu (pmm) exp wage = female, add(5) rseed(88) savetrace(extrace, replace) burnin(100)
use extrace, replace
reshape wide *mean *sd, i(iter) j(m)
tsset iter
tsline exp_mean*, title(“Mean of Imputed Values of Experience”) note(“Each line is for one imputation”) legend(off)
graph export conv1.png, replace
tsline exp_sd*, title(“Standard Deviation of Imputed Values of Experience”) note(“Each line is for one imputation”) legend(off)
graph export conv2.png, replace
restore

Trang trước 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15Trang sau
Xem thêm
Back to top button