Bootstrapping không thừa nhận bất kỳ kiến thức nào về hình thức phân phối cha mẹ cơ bản mà từ đó mẫu phát sinh. Ước tính tham số thống kê cổ điển truyền thống dựa trên giả định quy tắc. Bootstrap liên quan đến tính phi quy tắc và chính xác hơn trong thực tế so với các phương pháp cổ điển.
Bootstrapping thay thế sức mạnh tính toán thô của máy tính để phân tích lý thuyết nghiêm ngặt. Nó là một ước tính cho phân phối lấy mẫu của một thuật ngữ lỗi tập dữ liệu. Bootstrapping bao gồm: lấy mẫu lại dữ liệu đặt một số lần xác định, tính giá trị trung bình từ mỗi mẫu và tìm ra lỗi tiêu chuẩn của giá trị trung bình.
Đoạn mã Rv sau đây thể hiện khái niệm:
Ví dụ thực tế này cho thấy tính hữu ích của bootstrapping và ước tính lỗi tiêu chuẩn. Các lỗi tiêu chuẩn được yêu cầu để tính khoảng tin cậy.
Giả sử bạn có tập dữ liệu bị lệch "a":
a<-rexp(395, rate=0.1) # Create skewed data
trực quan hóa tập dữ liệu bị lệch
plot(a,type="l") # Scatter plot of the skewed data
boxplot(a,type="l") # Box plot of the skewed data
hist(a) # Histogram plot of the skewed data
Thực hiện thủ tục bootstrapping:
n <- length(a) # the number of bootstrap samples should equal the original data set
xbarstar <- c() # Declare the empty set “xbarstar” variable which will be holding the mean of every bootstrap iteration
for (i in 1:1000) { # Perform 1000 bootstrap iteration
boot.samp <- sample(a, n, replace=TRUE) #”Sample” generates the same number of elements as the original data set
xbarstar[i] <- mean(boot.samp)} # “xbarstar” variable collects 1000 averages of the original data set
##
plot(xbarstar) # Scatter plot of the bootstrapped data
boxplot(xbarstar) # Box plot of the bootstrapped data
hist(xbarstar) # Histogram plot of the bootstrapped data
meanOfMeans <- mean(xbarstar)
standardError <- sd(xbarstar) # the standard error is the standard deviation of the mean of means
confidenceIntervalAboveTheMean <- meanOfMeans + 1.96 * standardError # for 2 standard deviation above the mean
confidenceIntervalBelowTheMean <- meanOfMeans - 1.96 * standardError # for 2 standard deviation above the mean
confidenceInterval <- confidenceIntervalAboveTheMean + confidenceIntervalBelowTheMean
confidenceInterval