Câu trả lời:
Don Rubin đã viết một bài báo có ảnh hưởng chứng minh rằng không có phương pháp cắt cụt đơn lẻ nào sẽ tạo ra các suy luận không thiên vị (trong đó "chỉ một lần thôi" có nghĩa là chỉ đưa ra một giá trị cho một quan sát bị thiếu). Tuy nhiên, trong cùng một bài báo, ông đã chỉ ra rằng có thể tạo ra nhiều lần cắt ngang có nghĩa là ước tính không thiên vị của giá trị còn thiếu và những đóng góp của phương sai trong phân tích tiếp theo là ước tính hợp lý của độ không đảm bảo thêm do dữ liệu mất tích.
Đây là bài báo của anh ấy:
Rubin, DB (1976). Suy luận và thiếu dữ liệu. Biometrika , 63 (3): 581 Bóng592.
Và đây là bản cập nhật cho nó: Rubin, DB (1996). Nhiều lần cắt cụt sau hơn 18 năm. Tạp chí của Hiệp hội Thống kê Hoa Kỳ , 91 (434): 473 Vé361.
Và đây là một giới thiệu nhẹ nhàng về chủ đề của nhiều cuộc tranh luận:
Schafer, JL (1999). Nhiều lần cắt cụt: một mồi. Phương pháp thống kê trong nghiên cứu y học , 8: 3 Ném15.
Có rất nhiều gói phần mềm thống kê hỗ trợ nhiều lần cắt ngang (ví dụ chuột trong R, hoặc băng ở Stata hoặc thực sự là các khả năng cắt ngang tích hợp sẵn của Stata trong các phiên bản gần đây).
Làm điều này không bao giờ là một ý tưởng tốt , nhưng, nếu có rất ít dữ liệu bị mất thì nó sẽ gây hại tương đối ít, sẽ dễ thực hiện hơn và, tùy thuộc vào đối tượng cuối cùng của bạn, có thể dễ giải thích hơn rất nhiều. Tuy nhiên, một đối tượng tương đối tinh vi có thể phản đối việc cắt cụt trung bình duy nhất.
Câu hỏi: "Phương pháp cắt cụt nào là lựa chọn tốt nhất" luôn phụ thuộc vào tập dữ liệu bạn xem
Lấy giá trị trung bình, nói chung là một phương pháp cắt bỏ hợp lệ. Như ai đó đã đề cập, thật dễ dàng để giải thích cho các ấn phẩm và nó có lợi thế về tốc độ tính toán.
Có nghĩa là một phương pháp cắt bỏ là một lựa chọn tốt cho chuỗi dao động ngẫu nhiên xung quanh một giá trị / mức nhất định.
Đối với loạt được hiển thị, có nghĩa là không thích hợp. Vì nó cũng chỉ là một biến mà bạn không thể sử dụng thuật toán đa biến cổ điển như được cung cấp bởi chuột, Amelia, VIM.
Bạn sẽ phải xem xét đặc biệt là các thuật toán chuỗi thời gian. Một cách đơn giản, nhưng đối với ví dụ tốt như cách tiếp cận của bạn sẽ là phép nội suy tuyến tính.
library(imputeTS)
x <- c(1,8,12,14,NA,NA,19)
na.interpolation(x)
Đây là đầu ra cho một phép nội suy tuyến tính:
[1] 1.00000 8.00000 12.00000 14.00000 15.66667 17.33333 19.00000
Đây có lẽ là một kết quả tốt hơn so với trung bình.
Ngoài ra còn có các phương pháp chuỗi thời gian nâng cao hơn trong gói imputeTS (của tôi) hoặc một trong gói dự báo (của Rob Hyndman)