Lấy mẫu lại Bootstrap được sử dụng để hiểu khoảng tin cậy của các ước tính mẫu. Hàm này trả về các phiên bản của tập dữ liệu được lấy mẫu lại với sự thay thế [“khởi động trường hợp”]. Tất cả những điều này có thể được chạy thông qua một hàm hoặc thống kê để tạo ra một phân phối các giá trị mà sau đó có thể được sử dụng để tìm khoảng tin cậy
thông số dữ liệumảng N-D. Việc lấy mẫu lại bootstrap sẽ được thực hiện trên chỉ mục đầu tiên, vì vậy chỉ mục đầu tiên sẽ truy cập thông tin liên quan để được khởi động
bootnum , không bắt buộcSố lượng mẫu khởi động lại
mẫu , không bắt buộcSố lượng mẫu trong mỗi mẫu lại. Mặc định đặt mẫu cho số lượng điểm dữ liệu
bootfunc , không bắt buộcChức năng giảm dữ liệu được lấy mẫu lại. Mỗi mẫu khởi động lại sẽ được đưa qua chức năng này và kết quả trả về. Nếu , dữ liệu bootstrapped sẽ được trả về
khởi động lạiNếu bootfunc là Không, thì mỗi hàng là một mẫu dữ liệu khởi động lại. Nếu bootfunc được chỉ định, thì các cột sẽ tương ứng với đầu ra của bootfunc
Thông thường, nỗ lực xác định các đặc điểm của dân số bị hạn chế bởi thực tế là chúng ta phải dựa vào một mẫu để xác định các đặc điểm của dân số đó
Khi phân tích dữ liệu, chúng tôi muốn có thể ước tính phân phối lấy mẫu để thực hiện kiểm tra giả thuyết và tính toán khoảng tin cậy
Một cách để cố gắng giải quyết vấn đề này là một phương pháp gọi là bootstrapping, theo đó kết quả cho một tập hợp rộng hơn được suy ra từ việc lấy mẫu lặp lại
Chẳng hạn, để xác định xem một mẫu khác của cùng một quần thể có mang lại kết quả tương tự hay không, lý tưởng nhất là lấy các mẫu dữ liệu mới. Tuy nhiên, do điều này có thể không thực hiện được — một giải pháp thay thế là lấy mẫu ngẫu nhiên từ dữ liệu hiện có
Trong ví dụ này, chúng ta sẽ xem xét sự phân bổ tỷ lệ trung bình hàng ngày [ADR] giữa một loạt khách hàng của khách sạn. Cụ thể, một tập hợp con các số liệu ADR được sử dụng cùng với kỹ thuật bootstrapping để phân tích phân phối dự kiến sẽ trông như thế nào với cỡ mẫu lớn hơn
Khi tạo mẫu bằng bootstrapping, điều này được thực hiện bằng cách thay thế. Điều này có nghĩa là có thể chọn cùng một yếu tố từ mẫu nhiều lần
Sử dụng mẫu 300 giá trị ADR cho khách hàng khách sạn được lấy mẫu ngẫu nhiên từ bộ dữ liệu do Antonio, Almeida và Nunes cung cấp, chúng tôi sẽ tạo 5.000 mẫu bootstrap có kích thước 300
Cụ thể, numpy được sử dụng như bên dưới để tạo 300 mẫu có thay thế và vòng lặp for được sử dụng để tạo 5.000 lần lặp của 300 mẫu cùng một lúc
my_samples = []
for _ in range[5000]:
x = np.random.choice[sample, size=300, replace=True]
my_samples.append[x.mean[]]
Đây là biểu đồ của các mẫu khởi động
Nguồn. Đầu ra máy tính xách tay Jupyter
Đây là biểu đồ của 300 mẫu ban đầu được chọn ngẫu nhiên
Nguồn. Đầu ra máy tính xách tay Jupyter
Chúng ta có thể thấy rằng mẫu ban đầu bị lệch dương đáng kể. Tuy nhiên, biểu đồ của các mẫu khởi động gần đúng với phân phối chuẩn - phù hợp với giả định của định lý giới hạn trung tâm rằng khi kích thước mẫu tăng lên, phân phối dữ liệu cơ bản có thể được dự kiến sẽ xấp xỉ phân phối bình thường bất kể hình dạng của phân phối ban đầu
Công dụng chính của bootstrapping là ước tính khoảng tin cậy của trung bình tổng thể. Chẳng hạn, khoảng tin cậy 95% có nghĩa là chúng tôi tin tưởng 95% rằng giá trị trung bình nằm trong một phạm vi cụ thể
Khoảng tin cậy cho mẫu khởi động như sau
>>> import statsmodels.stats.api as sms
>>> sms.DescrStatsW[my_samples].tconfint_mean[][94.28205060553655, 94.4777529411301]
Theo như trên, chúng ta có thể tin tưởng 95% rằng trung bình dân số thực sự nằm trong khoảng từ 94. 28 và 94. 47
Bootstrapping sử dụng RSử dụng thư viện khởi động trong R, có thể tiến hành một dạng phân tích tương tự
Một lần nữa, giả sử rằng chỉ có 300 mẫu có sẵn
adr