Khoảng tin cậy bootstrap được sinh viên hóa trong R
Efron, Bradley và Robert J. Tibshirani. 1993. Giới thiệu về Bootstrap. Chuyên khảo về Thống kê và Xác suất Ứng dụng 57. Boca Raton, Florida, Mỹ. Chapman & Hội trường/CRC Show Smithson, Micheal. 2003. khoảng tin cậy. Ứng dụng định lượng trong khoa học xã hội. Nhà xuất bản SAGE, New York Một nghiên cứu mô phỏng đơn giản đã được thực hiện để khám phá chất lượng của các phương pháp khoảng tin cậy khác nhau. Mô phỏng liên quan đến việc tạo các quan sát \(n \in \{10, 20, 50, 100, 200\}\) từ phân phối \(\chi_1^2\), sau đó sử dụng bootstrap không tham số để tạo khoảng tin cậy cho . Xin nhắc lại, giá trị trung bình của phân phối chi bình phương là tham số bậc tự do \(k\), trong trường hợp này là \(\mu = 1\). Trung vị của phân phối chi bình phương với một bậc tự do là \(\theta = 0. 4549364\) Phân tích mô phỏng Đối với mỗi kích thước mẫu, tôi đã tạo 10.000 mẫu dữ liệu độc lập có kích thước \(n\), sau đó tôi sử dụng các phương pháp bootstrap không tham số để tạo khoảng tin cậy 95%. Bootstrap không tham số được triển khai bằng cách sử dụng hàm Kết quả mô phỏng cho giá trị trung bình Kết quả mô phỏng cho tham số trung bình được tóm tắt trong hình bên dưới. Biểu đồ con bên trái hiển thị tỷ lệ bao phủ cho từng phương pháp trên các kích thước mẫu khác nhau. Biểu đồ con bên phải hiển thị thời gian chạy trung bình cho từng phương thức trên các kích thước mẫu khác nhau Thực hiện trong RTrong Lập trình R, gói boot cho phép người dùng dễ dàng tạo các mẫu bootstrap của hầu như bất kỳ thống kê nào mà chúng tôi có thể tính toán. Chúng tôi có thể tạo các ước tính về độ lệch, khoảng tin cậy bootstrap hoặc sơ đồ phân phối bootstrap từ tính toán từ gói khởi động Đối với mục đích trình diễn, chúng tôi sẽ sử dụng bộ dữ liệu mống mắt do tính đơn giản và tính khả dụng của nó như một trong những bộ dữ liệu tích hợp trong R. Bộ dữ liệu bao gồm 50 mẫu từ mỗi loài trong số ba loài Iris (Iris setosa, Iris Virginia và Iris versicolor). Bốn tính năng được đo từ mỗi mẫu. chiều dài và chiều rộng của lá đài và cánh hoa, tính bằng centimet. Chúng ta có thể xem bộ dữ liệu mống mắt bằng lệnh head và lưu ý các tính năng của sở thích. R
đầu ra. Sepal.Length Sepal.Width Petal.Length Petal.Width Species 5.1 3.5 1.4 0.2 setosa Chúng tôi muốn ước tính mối tương quan giữa Chiều dài cánh hoa và Chiều rộng cánh hoa. Các bước để tính toán Bootstrap CI trong R 1. Nhập thư viện khởi động để tính toán CI bootstrap và ggplot2 để vẽ sơ đồ. R
ORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.0094362120
ORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.0094362122 2. Tạo một hàm tính toán thống kê mà chúng tôi muốn sử dụng, chẳng hạn như giá trị trung bình, trung bình, tương quan, v.v. RORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.0094362123 ORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.0094362124 ORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.0094362125_______1_______6 ORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.0094362127 ORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.0094362128 ORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.0094362129 BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS Based on 1000 bootstrap replicates CALL : boot.ci(boot.out = bootstrap, type = c("norm", "basic", "perc", "bca")) Intervals : Level Normal Basic 95% ( 0.9219, 0.9589 ) ( 0.9235, 0.9611 ) Level Percentile BCa 95% ( 0.9142, 0.9519 ) ( 0.9178, 0.9535 ) Calculations and Intervals on Original Scale0
ORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.0094362129 BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS Based on 1000 bootstrap replicates CALL : boot.ci(boot.out = bootstrap, type = c("norm", "basic", "perc", "bca")) Intervals : Level Normal Basic 95% ( 0.9219, 0.9589 ) ( 0.9235, 0.9611 ) Level Percentile BCa 95% ( 0.9142, 0.9519 ) ( 0.9178, 0.9535 ) Calculations and Intervals on Original Scale2 ORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.0094362129 BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS Based on 1000 bootstrap replicates CALL : boot.ci(boot.out = bootstrap, type = c("norm", "basic", "perc", "bca")) Intervals : Level Normal Basic 95% ( 0.9219, 0.9589 ) ( 0.9235, 0.9611 ) Level Percentile BCa 95% ( 0.9142, 0.9519 ) ( 0.9178, 0.9535 ) Calculations and Intervals on Original Scale4 ORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.0094362129 BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS Based on 1000 bootstrap replicates CALL : boot.ci(boot.out = bootstrap, type = c("norm", "basic", "perc", "bca")) Intervals : Level Normal Basic 95% ( 0.9219, 0.9589 ) ( 0.9235, 0.9611 ) Level Percentile BCa 95% ( 0.9142, 0.9519 ) ( 0.9178, 0.9535 ) Calculations and Intervals on Original Scale6 BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS Based on 1000 bootstrap replicates CALL : boot.ci(boot.out = bootstrap, type = c("norm", "basic", "perc", "bca")) Intervals : Level Normal Basic 95% ( 0.9219, 0.9589 ) ( 0.9235, 0.9611 ) Level Percentile BCa 95% ( 0.9142, 0.9519 ) ( 0.9178, 0.9535 ) Calculations and Intervals on Original Scale7 BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS Based on 1000 bootstrap replicates CALL : boot.ci(boot.out = bootstrap, type = c("norm", "basic", "perc", "bca")) Intervals : Level Normal Basic 95% ( 0.9219, 0.9589 ) ( 0.9235, 0.9611 ) Level Percentile BCa 95% ( 0.9142, 0.9519 ) ( 0.9178, 0.9535 ) Calculations and Intervals on Original Scale8 BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS Based on 1000 bootstrap replicates CALL : boot.ci(boot.out = bootstrap, type = c("norm", "basic", "perc", "bca")) Intervals : Level Normal Basic 95% ( 0.9219, 0.9589 ) ( 0.9235, 0.9611 ) Level Percentile BCa 95% ( 0.9142, 0.9519 ) ( 0.9178, 0.9535 ) Calculations and Intervals on Original Scale9 # View the first row 0# View the first row 1
3. Sử dụng chức năng khởi động để tìm R bootstrap của thống kê. R
đầu ra. ORDINARY NONPARAMETRIC BOOTSTRAP Call: boot(data = iris, statistic = corr.fun, R = 1000) Bootstrap Statistics : original bias std. error t1* 0.9376668 -0.002717295 0.009436212 4. Chúng ta có thể vẽ sơ đồ phân phối bootstrap đã tạo bằng cách sử dụng lệnh plot với bootstrap được tính toán. R
đầu ra. 5. Sử dụng khởi động. hàm ci() để lấy khoảng tin cậy. R
BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS Based on 1000 bootstrap replicates CALL : boot.ci(boot.out = bootstrap, type = c("norm", "basic", "perc", "bca")) Intervals : Level Normal Basic 95% ( 0.9219, 0.9589 ) ( 0.9235, 0.9611 ) Level Percentile BCa 95% ( 0.9142, 0.9519 ) ( 0.9178, 0.9535 ) Calculations and Intervals on Original Scale6 BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS Based on 1000 bootstrap replicates CALL : boot.ci(boot.out = bootstrap, type = c("norm", "basic", "perc", "bca")) Intervals : Level Normal Basic 95% ( 0.9219, 0.9589 ) ( 0.9235, 0.9611 ) Level Percentile BCa 95% ( 0.9142, 0.9519 ) ( 0.9178, 0.9535 ) Calculations and Intervals on Original Scale7 head 6head 7head 8head 7
đầu ra. BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS Based on 1000 bootstrap replicates CALL : boot.ci(boot.out = bootstrap, type = c("norm", "basic", "perc", "bca")) Intervals : Level Normal Basic 95% ( 0.9219, 0.9589 ) ( 0.9235, 0.9611 ) Level Percentile BCa 95% ( 0.9142, 0.9519 ) ( 0.9178, 0.9535 ) Calculations and Intervals on Original Scale Suy luận cho Bootstrap CI từ đầu ra Nhìn vào khoảng phương pháp bình thường của (0. 9219, 0. 9589) chúng ta có thể chắc chắn 95% rằng mối tương quan thực sự giữa chiều dài và chiều rộng của cánh hoa nằm trong khoảng này 95% thời gian. Như chúng ta đã thấy, đầu ra bao gồm nhiều CI sử dụng các phương thức khác nhau tùy theo tham số kiểu trong hàm boot. ci. Các khoảng được tính toán tương ứng với (“norm”, “basic”, “perc”, “bca”) hoặc Bình thường, Cơ bản, Phần trăm và BCa cung cấp các khoảng khác nhau cho cùng một mức 95%. Phương pháp cụ thể để sử dụng cho bất kỳ biến nào phụ thuộc vào các yếu tố khác nhau như phân phối, homoscedastic, bias, v.v. |