Bootstrap trong r không có gói

Khóa học này dạy những ý tưởng lớn trong học máy như cách xây dựng và đánh giá các mô hình dự đoán

Xem chi tiết Mũi tên phải

bắt đầu khóa học

Học không giám sát trong R

Người bắt đầu

4 giờ

43. 9K

Khóa học này cung cấp phần giới thiệu về phân cụm và giảm kích thước trong R từ góc độ học máy

Gói khởi động cung cấp các phương tiện mở rộng để khởi động và các phương pháp lấy mẫu lại có liên quan. Bạn có thể bootstrap một thống kê duy nhất (e. g. một trung vị) hoặc một vectơ (e. g. , trọng số hồi quy). Phần này sẽ giúp bạn bắt đầu với việc khởi động phi tham số cơ bản

Hàm bootstrapping chính là boot() và có dạng như sau

bootobject <- boot(data= , statistic= , R=,. ) Ở đâu

tham số mô tả dữ liệu Một véc-tơ, ma trận hoặc khung thống kê dữ liệu Một hàm tạo ra thống kê k cần khởi động (k=1 nếu khởi động một thống kê)
Hàm phải bao gồm một tham số chỉ mục mà hàm boot() có thể sử dụng để chọn các trường hợp cho mỗi bản sao (xem ví dụ bên dưới). RSố bản sao bootstrap. Các tham số bổ sung được chuyển đến hàm tạo thống kê quan tâm

boot() gọi hàm thống kê R lần. Mỗi lần, nó tạo ra một tập hợp các chỉ số ngẫu nhiên, có sự thay thế, từ các số nguyên 1. thu hẹp (dữ liệu). Các chỉ số này được sử dụng trong hàm thống kê để chọn mẫu. Các số liệu thống kê được tính toán trên mẫu và kết quả được tích lũy trong bootobject. Cấu trúc bootobject bao gồm

mô tả phần tử t0 Các giá trị quan sát của thống kê k được áp dụng cho dữ liệu gốc. tMột ma trận R x k trong đó mỗi hàng là bản sao bootstrap của thống kê k

Bạn có thể truy cập chúng dưới dạng bootobject$t0 và bootobject$t

Khi bạn tạo các mẫu bootstrap, print(bootobject) và plot(bootobject) có thể được sử dụng để kiểm tra kết quả. Nếu kết quả có vẻ hợp lý, bạn có thể sử dụng boot. hàm ci( ) để lấy khoảng tin cậy cho (các) thống kê

định dạng là

khởi động. ci(bootobject, conf=, type= ) ở đâu

tham số mô tảbootobjectĐối tượng được trả về bởi hàm khởi độngconf Khoảng tin cậy mong muốn (mặc định. conf=0. 95)typeLoại khoảng tin cậy được trả về. Các giá trị có thể là "norm", "basic", "stud", "perc", "bca" và "all" (mặc định. loại = "tất cả")

Bootstrapping một thống kê duy nhất (k=1)

Ví dụ sau đây tạo khoảng tin cậy 95% đã khởi động cho bình phương R trong hồi quy tuyến tính của dặm trên gallon (mpg) trên trọng lượng ô tô (wt) và dung tích dịch chuyển (độ phân tán). Nguồn dữ liệu là mtcars. Khoảng tin cậy bootstrapped dựa trên 1000 lần lặp lại

# Bootstrap 95% CI for R-Squared
library(boot)
# function to obtain R-Squared from the data
rsq <- function(formula, data, indices) {
  d <- data[indices,] # allows boot to select sample
  fit <- lm(formula, data=d)
  return(summary(fit)$r.square)
}
# bootstrapping with 1000 replications
results <- boot(data=mtcars, statistic=rsq,
   R=1000, formula=mpg~wt+disp)

# view results
results
plot(results)

# get 95% confidence interval
boot.ci(results, type="bca")

nhấp để xem

Bootstrapping một số Thống kê (k>1)

Trong ví dụ trên, hàm rsq trả về một số và khởi động. ci trả về một khoảng tin cậy duy nhất. Hàm thống kê bạn cung cấp cũng có thể trả về một vectơ. Trong ví dụ tiếp theo, chúng tôi nhận được 95% CI cho ba hệ số hồi quy mô hình (chặn, trọng lượng xe, chuyển vị). Trong trường hợp này, chúng tôi thêm một tham số chỉ mục vào biểu đồ ( ) và khởi động. ci( ) để chỉ ra cột nào trong bootobject$t được phân tích

# Bootstrap 95% CI for regression coefficients
library(boot)
# function to obtain regression weights
bs <- function(formula, data, indices) {
  d <- data[indices,] # allows boot to select sample
  fit <- lm(formula, data=d)
  return(coef(fit))
}
# bootstrapping with 1000 replications
results <- boot(data=mtcars, statistic=bs,
   R=1000, formula=mpg~wt+disp)

# view results
results
plot(results, index=1) # intercept
plot(results, index=2) # wt
plot(results, index=3) # disp

# get 95% confidence intervals
boot.ci(results, type="bca", index=1) # intercept
boot.ci(results, type="bca", index=2) # wt
boot.ci(results, type="bca", index=3) # disp

nhấp để xem

Đi xa hơn

Hàm boot( ) có thể tạo cả lấy mẫu lại tham số và phi tham số. Đối với bootstrap không tham số, các phương pháp lấy mẫu lại bao gồm thông thường, cân bằng, phản đối và hoán vị. Đối với bootstrap không tham số, hỗ trợ lấy mẫu lại phân tầng. Trọng lượng lấy mẫu lại tầm quan trọng cũng có thể được chỉ định

Chiếc ủng. hàm ci( ) lấy một đối tượng khởi động và tạo ra 5 loại khoảng tin cậy không tham số hai phía khác nhau. Chúng bao gồm xấp xỉ bình thường bậc một, khoảng thời gian bootstrap cơ bản, khoảng thời gian bootstrap được sinh viên hóa, khoảng phần trăm bootstrap và khoảng phần trăm bootstrap được điều chỉnh (BCa)

Nhìn vào trợ giúp (khởi động), trợ giúp (khởi động. ci) và trợ giúp (âm mưu. khởi động) để biết thêm chi tiết

Học nhiều hơn nữa

Các nguồn thông tin tốt bao gồm Phương pháp lấy mẫu lại trong R. Gói khởi động của Angelo Canty, Bắt đầu với gói khởi động của Ajay Shah, Mô hình hồi quy khởi động của John Fox, và Phương pháp Bootstrap và ứng dụng của chúng bởi Davison và Hinkley

Luyện tập

Hãy thử bài tập tương tác này với gói khởi động từ khóa học Giới thiệu về tài chính tính toán với R của DataCamp

Làm cách nào để tạo mẫu bootstrap trong R?

Lấy mẫu Bootstrap trong R .
Lấy mẫu lại dữ liệu với n lần thay thế
Tính toán thống kê mong muốn n lần để tạo phân phối thống kê ước tính
Xác định lỗi tiêu chuẩn/khoảng tin cậy cho thống kê bootstrapped từ bản phân phối bootstrapped

Gói bootstrap trong R là gì?

Bootstrap là phương pháp lấy mẫu lại có thay thế . Nó cho phép chúng tôi ước tính sự phân bố của dân số ngay cả từ một mẫu duy nhất. Trong Machine Learning, bootstrap ước tính hiệu suất dự đoán trong khi áp dụng cho dữ liệu không được quan sát. Đối với tập dữ liệu và mã R, vui lòng kiểm tra Github của tôi (liên kết).

Bootstrapping có cần thay thế không?

Phương pháp bootstrap liên quan đến việc lặp đi lặp lại việc lấy mẫu lại tập dữ liệu có thay thế .

Làm cách nào để tìm khoảng tin cậy bootstrap trong R?

Có thể tìm thấy khoảng tin cậy bootstrap bằng cách sử dụng chức năng khởi động . Bootstrapping là một phương pháp tìm số liệu thống kê suy luận với sự trợ giúp của dữ liệu mẫu. Nó được thực hiện bằng cách vẽ một số lượng lớn các mẫu với sự thay thế từ các giá trị giống nhau.