Bootstrapping dữ liệu Khoa học

Trong bài học này, bạn sẽ học một công cụ thiết thực quan trọng để suy luận thống kê về các vấn đề phân tích dữ liệu thực tế, được gọi là bootstrap. Cụ thể, bạn sẽ tìm hiểu về

Hãy khởi động. Vui lòng tải các thư viện

ggplot(NHANES_sleep) + 
  geom_histogram(aes(x = SleepHrsNight), binwidth=1)
9 và
mean(~SleepHrsNight, data=NHANES_sleep)
0

library(tidyverse)
library(mosaic)

Vui lòng tải xuống và nhập dữ liệu trong NHANES_sleep. csv. Tệp này chứa một phần dữ liệu từ Khảo sát kiểm tra sức khỏe và dinh dưỡng quốc gia, được gọi là NHANES. NHANES là một cuộc khảo sát lớn trên toàn quốc do Trung tâm Kiểm soát và Phòng ngừa Dịch bệnh Hoa Kỳ (CDC) điều hành. Theo CDC, nó “được thiết kế để đánh giá tình trạng sức khỏe và dinh dưỡng của người lớn và trẻ em ở Hoa Kỳ. ” Nó được dự định là một cuộc khảo sát đại diện trên toàn quốc mà kết quả của nó có thể được khái quát hóa cho toàn bộ dân số Mỹ — và thực sự, nó về cơ bản là tốt như các cuộc khảo sát từng có về vấn đề đó, ít nhất là bên ngoài các trang sách giáo khoa thống kê. Ngoài ra, NHANES còn toàn diện một cách khác thường trong các cuộc khảo sát về sức khỏe, ở chỗ nó kết hợp cả phỏng vấn và khám sức khỏe

Tại đây, chúng ta sẽ xem xét một nhóm nhỏ gồm 1.991 người tham gia khảo sát từ phiên bản khảo sát 2011-2012, tập trung vào một số câu hỏi xung quanh giấc ngủ và chứng trầm cảm. (Tập dữ liệu đầy đủ có nhiều thông tin hơn những gì bạn sẽ thấy trong tệp này. ) Tệp

mean(~SleepHrsNight, data=NHANES_sleep)
1 chứa thông tin về giới tính, tuổi tác, chủng tộc/sắc tộc tự khai và tình trạng sở hữu nhà của mọi người. Nó cũng có một số thông tin về sức khỏe. 1) số giờ tự báo cáo mà mỗi người tham gia nghiên cứu thường có vào ban đêm vào các ngày trong tuần hoặc ngày làm việc; . ”

Năm dòng đầu tiên của tệp dữ liệu trông như thế này

##   SleepHrsNight Gender Age Race_Ethnicity HomeOwn Depressed Smoke100
## 1             4 female  56          Black     Own      None      Yes
## 2             7   male  34     White (NH)    Rent      None       No
## 3             7   male  27     White (NH)    Rent      None       No
## 4             9   male  50     White (NH)     Own      None       No
## 5             6   male  80          Black    Rent      None       No

ví dụ 1. trung bình mẫu

Câu hỏi đầu tiên chúng tôi sẽ giải quyết là. trung bình người Mỹ ngủ ngon như thế nào?

ggplot(NHANES_sleep) + 
  geom_histogram(aes(x = SleepHrsNight), binwidth=1)

Bootstrapping dữ liệu Khoa học

Vì vậy, có vẻ như giá trị trung bình mẫu là khoảng 7 giờ mỗi đêm, nhưng có rất nhiều biến thể xung quanh giá trị trung bình đó. một số người ngủ nhiều hơn 7 giờ và một số người ngủ ít hơn rất nhiều. Để tính giá trị trung bình chính xác hơn một chút, chúng ta sẽ sử dụng một trong các hàm “phím tắt” mà chúng ta đã học trong phần về các phím tắt Tóm tắt, một vài bài học trước, để tính số giờ trung bình mỗi đêm mà những người tham gia khảo sát của chúng tôi cho biết họ

mean(~SleepHrsNight, data=NHANES_sleep)

________số 8

Theo khảo sát, đó là 6. Trung bình 88 giờ mỗi đêm. Nhưng hãy nhớ rằng, đây chỉ là một cuộc khảo sát—một cuộc khảo sát được thiết kế rất tốt, nhưng dù sao cũng là một cuộc khảo sát. Chúng tôi rõ ràng có một số điều không chắc chắn trong việc khái quát hóa con số này cho toàn bộ dân số Mỹ

Bao nhiêu?

NHANES_sleep_bootstrap = mosaic::resample(NHANES_sleep)
mean(~SleepHrsNight, data=NHANES_sleep_bootstrap)

mean(~SleepHrsNight, data=NHANES_sleep)
0

Lần lượt từng dòng

  • dòng đầu tiên nói với
    mean(~SleepHrsNight, data=NHANES_sleep)
    3 tập dữ liệu
    mean(~SleepHrsNight, data=NHANES_sleep)
    1 và để lưu trữ kết quả trong một đối tượng có tên là
    mean(~SleepHrsNight, data=NHANES_sleep)
    5. Tại sao
    mean(~SleepHrsNight, data=NHANES_sleep)
    6 thay vì chỉ
    mean(~SleepHrsNight, data=NHANES_sleep)
    3? . Bằng cách thêm
    mean(~SleepHrsNight, data=NHANES_sleep)
    9 vào trước
    mean(~SleepHrsNight, data=NHANES_sleep)
    3, chúng tôi làm rõ với R rằng chúng tôi muốn sử dụng phiên bản của chức năng đó được xác định trong thư viện
    mean(~SleepHrsNight, data=NHANES_sleep)
    0. (Theo mặc định, hàm
    mean(~SleepHrsNight, data=NHANES_sleep)
    3 của khảm lấy một mẫu thay thế có cùng kích thước với mẫu ban đầu của bạn, đây là hai yêu cầu chính của bootstrapping. )
  • dòng thứ hai nói để tính giá trị trung bình của biến
    mean(~SleepHrsNight, data=NHANES_sleep)
    2 cho mẫu bootstrap (i. e. không phải cho mẫu ban đầu)

Kết quả là khoảng 6. trung bình 83 giờ. Điều này khác với 6. 88, giá trị trung bình của mẫu ban đầu, khoảng 0. 05 giờ, hoặc 3 phút. Hãy nhớ rằng, sự khác biệt này thể hiện lỗi lấy mẫu. (Hay chính xác hơn, nó đại diện cho lỗi lấy mẫu bootstrap, gần đúng với lỗi lấy mẫu thực tế. ) Vậy là chúng ta đã học được điều gì đó hữu ích. kết quả khảo sát của chúng tôi là 6. 88 giờ mỗi đêm có thể dễ dàng sai khác 3 phút so với mức trung bình dân số thực, chỉ vì tính không chắc chắn vốn có của việc lấy mẫu. Chúng tôi biết điều này có thể xảy ra vì chúng tôi đã thấy lỗi 3 phút xảy ra ngay trước mắt mình

Tôi không biết bạn thế nào, nhưng phản ứng của tôi với con số đó là 3 phút có vẻ như là một sai số khá nhỏ, ít nhất là so với một giấc ngủ trung bình gần 7 giờ. Có vẻ như gợi ý rằng độ không đảm bảo thống kê của chúng tôi là khá nhỏ—nói cách khác, chúng tôi biết thời gian ngủ trung bình của dân số Mỹ trong năm 2011-2012 khá chính xác dựa trên khảo sát của NHANES

Nhưng tất nhiên, lỗi đó là 3 phút, hoặc 0. 05 giờ, chỉ dựa trên một mẫu bootstrap duy nhất. 3 phút có phải là lỗi lấy mẫu thông thường không?

Hãy chạy 10.000 mẫu bootstrap để tìm hiểu. Hóa ra là chúng ta có thể làm điều này trong một dòng mã R duy nhất kết hợp

## [1] 6.878955
4 với
mean(~SleepHrsNight, data=NHANES_sleep)
3. (Hãy nhớ
## [1] 6.878955
4 từ bài học trước của chúng ta về Phân phối lấy mẫu. ) Dòng sau đây có thể mất mười giây hoặc lâu hơn để thực thi trên máy của bạn, vì vậy hãy kiên nhẫn

library(tidyverse)
library(mosaic)
5

Tuyên bố này nói với. 1) tạo 10.000 mẫu bootstrap từ khung dữ liệu

mean(~SleepHrsNight, data=NHANES_sleep)
1 ban đầu và 2) cho mỗi mẫu bootstrap, tính lại giá trị trung bình của biến
mean(~SleepHrsNight, data=NHANES_sleep)
2. Chúng tôi lưu trữ tập kết quả gồm 10.000 phương tiện mẫu trong một đối tượng có tên là
## [1] 6.878955
9

Đối tượng

## [1] 6.878955
9 này trông như thế nào?

mean(~SleepHrsNight, data=NHANES_sleep)
0

Chúng tôi thấy một cột duy nhất có tên là

NHANES_sleep_bootstrap = mosaic::resample(NHANES_sleep)
mean(~SleepHrsNight, data=NHANES_sleep_bootstrap)
1, với mỗi mục đại diện cho giá trị trung bình của một mẫu bootstrap đơn lẻ. Hãy tạo biểu đồ của 10.000 phương tiện khác nhau này

mean(~SleepHrsNight, data=NHANES_sleep)
2

Bootstrapping dữ liệu Khoa học

Biểu đồ này đại diện cho phân phối lấy mẫu bootstrap của chúng tôi, được thiết kế để ước tính phân phối lấy mẫu thực mà chúng ta đã nói đến trong bài học trước

Bootstrap lỗi tiêu chuẩn và khoảng tin cậy

Vì vậy, bây giờ chúng ta phải làm gì với phân phối lấy mẫu này? . chúng tôi đặt hai câu hỏi giống nhau mà lẽ ra chúng tôi phải hỏi về bất kỳ phân phối lấy mẫu nào

Đầu tiên, nó tập trung ở đâu? . 88 giờ ngủ mà bạn sẽ nhớ là giá trị trung bình mẫu từ mẫu ban đầu của chúng tôi. Điều này có ý nghĩa, vì theo logic của quá trình khởi động, mẫu ban đầu là đại diện thay thế của chúng tôi cho dân số. Điều này là yên tâm. nó cho chúng ta biết rằng trung bình quá trình lấy mẫu dường như đang nhận được câu trả lời “đúng”. Tất nhiên, chúng tôi không biết câu trả lời đúng cho dân số, nhưng chúng tôi biết câu trả lời đúng cho mẫu ban đầu của mình. Và “câu trả lời mẫu ban đầu” này chính xác là những gì chúng tôi hy vọng sẽ thấy từ mức trung bình của các mẫu bootstrap. Logic ở đây là, đại khái. nếu trung bình việc lấy mẫu từ mẫu ban đầu nhận được câu trả lời đúng của mẫu ban đầu, thì chúng tôi cảm thấy yên tâm rằng việc lấy mẫu từ dân số sẽ nhận được câu trả lời đúng của dân số, tính trung bình (ngay cả khi chúng tôi không biết câu trả lời của dân số là gì)

Thứ hai, phân phối lấy mẫu trải rộng như thế nào?

##   SleepHrsNight Gender Age Race_Ethnicity HomeOwn Depressed Smoke100
## 1             4 female  56          Black     Own      None      Yes
## 2             7   male  34     White (NH)    Rent      None       No
## 3             7   male  27     White (NH)    Rent      None       No
## 4             9   male  50     White (NH)     Own      None       No
## 5             6   male  80          Black    Rent      None       No
0

##   SleepHrsNight Gender Age Race_Ethnicity HomeOwn Depressed Smoke100
## 1             4 female  56          Black     Own      None      Yes
## 2             7   male  34     White (NH)    Rent      None       No
## 3             7   male  27     White (NH)    Rent      None       No
## 4             9   male  50     White (NH)     Own      None       No
## 5             6   male  80          Black    Rent      None       No
1

Vì vậy, có vẻ như lỗi lấy mẫu "điển hình" là khoảng 0. 03 giờ, hoặc khoảng 2 phút. Chúng ta có thể kết luận rằng chúng ta biết thời gian ngủ trung bình của người Mỹ khá chính xác dựa trên khảo sát của NHANES. bây giờ là 6. 88 giờ, lên đến sai số khoảng 0. 03 giờ, hoặc hai phút. Nói cách khác, nếu chúng tôi thực sự có thể hỏi tất cả mọi người ở Mỹ, chúng tôi cảm thấy khá tự tin rằng trung bình của tất cả các câu trả lời của họ sẽ nằm đâu đó trong phạm vi 6. 88 \(\chiều\) 0. 03 giờ

Chúng tôi nói rằng chúng tôi “khá tự tin” rằng câu trả lời là 6. 88 \(\chiều\) 0. 03, nhưng "khá" tự tin là một từ hơi khó hiểu. Chúng ta tự tin đến mức nào? . 03 trở xuống

Bootstrapping dữ liệu Khoa học

Khu vực giữa các đường màu đỏ tương ứng với các lỗi lấy mẫu bootstrap bằng 0. 03 trở xuống (nghĩa là trong một lỗi tiêu chuẩn ở giữa phân phối lấy mẫu). Chỉ cần nhìn vào nó, tôi muốn nói rằng khoảng hai phần ba bootstrap có nghĩa là rơi vào cửa sổ này. Do đó, một lần nữa, chỉ cần nhìn vào nó, tôi muốn nói rằng tôi tin tưởng khoảng 65-70% rằng thời gian ngủ trung bình của người Mỹ rơi vào khoảng 6. 88 \(\chiều\) 0. 03 giờ

Tất nhiên, chúng ta có thể sử dụng

NHANES_sleep_bootstrap = mosaic::resample(NHANES_sleep)
mean(~SleepHrsNight, data=NHANES_sleep_bootstrap)
2 để kiểm tra, nếu muốn chắc chắn

##   SleepHrsNight Gender Age Race_Ethnicity HomeOwn Depressed Smoke100
## 1             4 female  56          Black     Own      None      Yes
## 2             7   male  34     White (NH)    Rent      None       No
## 3             7   male  27     White (NH)    Rent      None       No
## 4             9   male  50     White (NH)     Own      None       No
## 5             6   male  80          Black    Rent      None       No
2

##   SleepHrsNight Gender Age Race_Ethnicity HomeOwn Depressed Smoke100
## 1             4 female  56          Black     Own      None      Yes
## 2             7   male  34     White (NH)    Rent      None       No
## 3             7   male  27     White (NH)    Rent      None       No
## 4             9   male  50     White (NH)     Own      None       No
## 5             6   male  80          Black    Rent      None       No
3

Đó là 6.825 trên 10.000, hay 68%. Do đó, chúng tôi đề cập đến khoảng thời gian 6. 88 \(\chiều\) 0. 03 là khoảng tin cậy 68%. Nói cách khác. dự đoán tốt nhất của chúng tôi là 6. 88 và chúng tôi tự tin 68% rằng dự đoán của chúng tôi nằm trong khoảng 0. 03 giờ của sự thật dù thế nào đi nữa. (Tất nhiên, bạn có thể nhận được một con số hơi khác, chẳng hạn như 67% hoặc 69%, do biến thiên Monte Carlo. )

Bây giờ, bạn có thể phản đối một điều ở đây, hoàn toàn trên cơ sở hòa đồng. những người bình thường không đi loanh quanh và nói những điều như “Tôi tin chắc 68% điều đó và điều đó đúng. ” Ý tôi là, 68%? . Tất nhiên không có gì sai với 68% là mức độ tin cậy; . Hơn nữa, ngay cả khi bạn miễn nhiễm với áp lực tuân thủ như vậy, bạn cũng có thể phản đối một cách hợp pháp rằng 68% đơn giản là quá thấp, rằng những người nghiêm túc sẽ không chịu đựng được sự cẩu thả như vậy và do đó bạn muốn thể hiện kết luận của mình ở cấp độ cao hơn.

Vậy âm thanh 95% như thế nào? . Có lẽ vì những lý do này, 95% là một lựa chọn thông thường về mức độ tin cậy sẽ không khiến bất kỳ ai nhướng mày. Vì vậy, hãy bắt đầu với nó, sử dụng hàm

NHANES_sleep_bootstrap = mosaic::resample(NHANES_sleep)
mean(~SleepHrsNight, data=NHANES_sleep_bootstrap)
3

##   SleepHrsNight Gender Age Race_Ethnicity HomeOwn Depressed Smoke100
## 1             4 female  56          Black     Own      None      Yes
## 2             7   male  34     White (NH)    Rent      None       No
## 3             7   male  27     White (NH)    Rent      None       No
## 4             9   male  50     White (NH)     Own      None       No
## 5             6   male  80          Black    Rent      None       No
4

##   SleepHrsNight Gender Age Race_Ethnicity HomeOwn Depressed Smoke100
## 1             4 female  56          Black     Own      None      Yes
## 2             7   male  34     White (NH)    Rent      None       No
## 3             7   male  27     White (NH)    Rent      None       No
## 4             9   male  50     White (NH)     Own      None       No
## 5             6   male  80          Black    Rent      None       No
5

Đây là khoảng tin cậy 95% cho thời gian ngủ trung bình vào các ngày trong tuần của người Mỹ. Nó nói rằng dự đoán tốt nhất của chúng tôi là khoảng 6. 88 giờ mỗi đêm và chúng tôi tự tin 95% rằng câu trả lời đúng nằm trong khoảng từ 6. 82 và 6. 94, hoặc tương đương, 6. 88 \(\chiều\) 0. 06

Có thể hữu ích khi thấy khoảng tin cậy 95% này được đặt chồng lên phân phối lấy mẫu bootstrap. Đây rồi

Bootstrapping dữ liệu Khoa học

Về cơ bản, nó giống như lấy một chiếc rìu nhỏ và chặt 2. 5% phân phối lấy mẫu bootstrap ở một trong hai đuôi, để lại 95% ở giữa làm khoảng tin cậy của bạn

Bạn có thể nhận thấy rằng khoảng thời gian 95% này kết thúc bằng hai lỗi tiêu chuẩn hoặc 0. 06 giờ, ở hai bên ước tính mẫu của bạn là 6. 88. Sự tương ứng bằng số cụ thể này (68% cho 1 lỗi tiêu chuẩn, 95% cho 2 lỗi) xảy ra đủ thường xuyên để đảm bảo một quy tắc ngón tay cái

Quy tắc khoảng tin cậy của ngón tay cái. khoảng tin cậy 95% có xu hướng là khoảng hai lỗi tiêu chuẩn ở hai bên dự đoán tốt nhất của bạn. Khoảng tin cậy 68% có xu hướng là về một lỗi tiêu chuẩn đối với một trong hai bên dự đoán tốt nhất của bạn

Nhưng khi nghi ngờ, bạn luôn có thể sử dụng

NHANES_sleep_bootstrap = mosaic::resample(NHANES_sleep)
mean(~SleepHrsNight, data=NHANES_sleep_bootstrap)
3 ở bất kỳ cấp độ nào bạn chọn

Gotcha khởi động lớn nhất

Hãy nói về “vấn đề” lớn nhất trong quá trình khởi động. Nó liên quan đến thực tế sau đây. rằng phân phối dữ liệu của một số biến (như

mean(~SleepHrsNight, data=NHANES_sleep)
2) và phân phối lấy mẫu cho giá trị trung bình của biến đó là hai điều khác nhau về cơ bản. Khởi động lớn nhất “gotcha” bật kết hợp cả hai

Trên thực tế, qua nhiều năm, tôi đã học được rằng nếu các sinh viên trong lớp khoa học dữ liệu của tôi nghiền nát nó, và nếu tôi sợ rằng hiệu trưởng sẽ bắt đầu la mắng tôi về việc lạm phát điểm nhiều hơn là các sinh viên sẽ la mắng tôi về việc lạm phát điểm của họ. . Có nghĩa là, bạn nói? . Bạn không thể rơi vào tình huống cụ thể này, trừ khi bạn thể hiện một sự hiểu lầm hoàn toàn cơ bản về bootstrap và về phân phối lấy mẫu nói chung

Hãy xem một ví dụ “gotcha. ” Cách thiết lập ở đây sẽ có cảm giác quen thuộc, bởi vì đó chính xác là cuộc khảo sát của NHANES mà chúng ta đã nói đến. Giả sử chúng tôi có một mẫu ngẫu nhiên gồm 1.991 người Mỹ và chúng tôi hỏi mỗi người trong số họ ngủ bao nhiêu giờ mỗi đêm. Chúng tôi tính trung bình là 6. 88 giờ, sau đó chúng tôi khởi động lại mẫu để hình thành phân phối lấy mẫu bootstrap

library(tidyverse)
library(mosaic)
5

Chúng tôi kiểm tra phân phối lấy mẫu và tính toán khoảng tin cậy 95%, như thế này

mean(~SleepHrsNight, data=NHANES_sleep)
2

Bootstrapping dữ liệu Khoa học

##   SleepHrsNight Gender Age Race_Ethnicity HomeOwn Depressed Smoke100
## 1             4 female  56          Black     Own      None      Yes
## 2             7   male  34     White (NH)    Rent      None       No
## 3             7   male  27     White (NH)    Rent      None       No
## 4             9   male  50     White (NH)     Own      None       No
## 5             6   male  80          Black    Rent      None       No
8

##   SleepHrsNight Gender Age Race_Ethnicity HomeOwn Depressed Smoke100
## 1             4 female  56          Black     Own      None      Yes
## 2             7   male  34     White (NH)    Rent      None       No
## 3             7   male  27     White (NH)    Rent      None       No
## 4             9   male  50     White (NH)     Own      None       No
## 5             6   male  80          Black    Rent      None       No
9

Vì vậy, đây là câu hỏi. Tôi thực sự khuyên rằng, với tư cách là người tự chẩn đoán, bạn hãy tự trả lời trước khi nhấp vào cảnh báo spoiler

Đúng hay sai. biểu đồ này và khoảng tin cậy liên quan, cho chúng tôi biết rằng khoảng 95% người Mỹ ngủ ở đâu đó trong khoảng từ 6. 82 và 6. 94 giờ trong một đêm trung bình (làm tròn đến hai chữ số thập phân)

SAI, SAI, 10.000 lần SAI. Này, nghe này, tôi không thất vọng về bạn hay bất cứ điều gì nếu bạn nghĩ câu trả lời là “đúng. ” Đó là một sự hiểu lầm rất phổ biến và không có gì đáng xấu hổ trong đó. Nhưng nếu bạn là một trong những người nghĩ rằng tuyên bố này là đúng, tôi sẽ đồng ý với bạn. rất có thể bạn cần quay lại phần đầu của bài học về Tính không chắc chắn của thống kê và bắt đầu lại từ đó, tiến hành rất cẩn thận cho đến khi bạn đạt được điểm này một lần nữa. Trong các bài học sắp tới, hầu như sẽ không có gì phù hợp với bạn cho đến khi bạn hiểu tại sao “đúng” lại là câu trả lời sai—hoặc, thậm chí tốt hơn, cách bạn có thể sửa câu phát biểu sao cho nó thực sự đúng

Vậy tại sao tuyên bố này là sai? . Đó là những gì phân phối dữ liệu cho chúng ta biết. Thay vào đó, phân phối lấy mẫu của giá trị trung bình nói về mức độ chính xác mà chúng ta có thể ước tính giá trị trung bình của tổng thể, dựa trên giá trị trung bình của phân phối dữ liệu. Ý nghĩa dân số thu gọn một lượng lớn các biến thể riêng lẻ thành một số duy nhất. Vì vậy, một tuyên bố đúng sẽ là. “Biểu đồ này và khoảng tin cậy liên quan cho chúng tôi biết rằng chúng tôi có thể tin tưởng 95% dựa trên mẫu này rằng thời gian ngủ trung bình của dân số là từ 6. 82 và 6. 94 giờ mỗi đêm (làm tròn đến hai chữ số thập phân). ”

Để nhấn mạnh sự khác biệt giữa phân phối dữ liệu và phân phối lấy mẫu, hãy thực sự xem xét phân phối dữ liệu một lần nữa. Đây là cùng một biểu đồ mà chúng ta đã thấy ở phần đầu của ví dụ NHANES. Đó là phân phối của

mean(~SleepHrsNight, data=NHANES_sleep)
2 trong số tất cả 1.991 người trả lời khảo sát

ggplot(NHANES_sleep) + 
  geom_histogram(aes(x = SleepHrsNight), binwidth=1)

Bootstrapping dữ liệu Khoa học

Hãy xem phân phối dữ liệu rộng hơn bao nhiêu so với phân phối lấy mẫu. Rõ ràng là không đúng khi nói rằng 95% người Mỹ ngủ từ 6. 82 và 6. 94 giờ mỗi đêm. Trong thực tế, một tuyên bố như vậy là hoàn toàn sai. Chỉ cần nhìn vào biểu đồ, một tuyên bố hợp lý hơn có thể là khoảng 95% người Mỹ ngủ từ 4 đến 9 giờ mỗi đêm. Có một số lượng lớn các biến thể xung quanh dân số có nghĩa là

Tuy nhiên, điều đúng là mẫu này đã cho phép chúng tôi ước tính ý nghĩa dân số này khá chính xác. khoảng 6 giờ. 88 \(\chiều\) 0. 06 giờ mỗi đêm, với độ tin cậy 95%. Đó là sự không chắc chắn về mặt thống kê của chúng tôi và đó là điều mà phân phối lấy mẫu đang nói với chúng tôi

Đạo đức của câu chuyện là. không rơi cho gotcha

  • Phân phối dữ liệu của
    mean(~SleepHrsNight, data=NHANES_sleep)
    2 là có thật. Bạn có thể vẽ nó. Bạn có thể thấy nó. Sự thay đổi xung quanh giá trị trung bình của phân phối đó đại diện cho những điều thực tế đã xảy ra với người thực
  • Phân phối lấy mẫu của giá trị trung bình của
    mean(~SleepHrsNight, data=NHANES_sleep)
    2 là một cái gì đó khác biệt cơ bản. Đó là, theo nghĩa đen nhất của từ này, tưởng tượng. Đó là sự phân phối một loạt các phương tiện tưởng tượng cho các câu trả lời tưởng tượng từ các cuộc khảo sát tưởng tượng về giấc ngủ của mọi người. Tuy nhiên, đối với tất cả những điều đó, bản phân phối này vẫn thực sự hữu ích;
  • Toàn bộ điểm của bài học này là chúng ta không thể chạy thử nghiệm tưởng tượng thực tế đó một cách khả thi, vì vậy chúng tôi chạy một phiên bản gần đúng của thử nghiệm tưởng tượng đó thông qua bootstrap

ví dụ 2. tỷ lệ mẫu

Hãy xem ví dụ thứ hai về hoạt động của bootstrap. Câu hỏi tiếp theo chúng tôi sẽ giải quyết là. mức độ thường xuyên của cảm giác chán nản trong dân số Mỹ? . Các tùy chọn là “Không có”, “Một số”, “Phần lớn” (hơn một nửa số ngày) hoặc “Hầu như tất cả. ”

Để phân tích đơn giản, chúng tôi sẽ xác định một biến mới có tên là

mean(~SleepHrsNight, data=NHANES_sleep)
00 mã hóa xem câu trả lời của người tham gia cho câu hỏi này có gì khác ngoài
mean(~SleepHrsNight, data=NHANES_sleep)
01 hay không

ggplot(NHANES_sleep) + 
  geom_histogram(aes(x = SleepHrsNight), binwidth=1)
1

Bên trong câu lệnh

mean(~SleepHrsNight, data=NHANES_sleep)
02,
mean(~SleepHrsNight, data=NHANES_sleep)
03 có nghĩa là “không bằng. ” Vì vậy, câu lệnh này mã hóa biến
mean(~SleepHrsNight, data=NHANES_sleep)
00 thành
mean(~SleepHrsNight, data=NHANES_sleep)
05 nếu câu trả lời của người tham gia đó là bất kỳ điều gì khác ngoài
mean(~SleepHrsNight, data=NHANES_sleep)
01 và là
mean(~SleepHrsNight, data=NHANES_sleep)
07 nếu ngược lại

Bây giờ, hãy sử dụng chức năng “phím tắt” mà chúng ta đã học trong phần về các phím tắt Tóm tắt, một vài bài học trước, để tính tỷ lệ những người trong cuộc khảo sát của chúng ta đã báo cáo bất kỳ tình trạng trầm cảm nào

ggplot(NHANES_sleep) + 
  geom_histogram(aes(x = SleepHrsNight), binwidth=1)
2

ggplot(NHANES_sleep) + 
  geom_histogram(aes(x = SleepHrsNight), binwidth=1)
3

Vì vậy, khoảng 20% ​​mẫu. Các chuyên gia sức khỏe tâm thần thường nói với chúng ta rằng trầm cảm phổ biến hơn nhiều so với nhận thức của nhiều người;

Kết quả khảo sát này mô tả chính xác tần suất trầm cảm của tất cả người Mỹ như thế nào? . Mã này có thể mất mười giây hoặc lâu hơn để chạy

ggplot(NHANES_sleep) + 
  geom_histogram(aes(x = SleepHrsNight), binwidth=1)
4

Tuyên bố này nói với. 1) tạo 10.000 mẫu bootstrap từ khung dữ liệu

mean(~SleepHrsNight, data=NHANES_sleep)
1 ban đầu và 2) đối với mỗi mẫu bootstrap, tính toán lại tỷ lệ của những mẫu mà biến
mean(~SleepHrsNight, data=NHANES_sleep)
00 bằng với
mean(~SleepHrsNight, data=NHANES_sleep)
05. Chúng tôi lưu trữ tập kết quả gồm 10.000 tỷ lệ khởi động trong một đối tượng có tên là
library(tidyverse)
library(mosaic)
51

Sáu dòng đầu tiên của đối tượng này trông như sau

ggplot(NHANES_sleep) + 
  geom_histogram(aes(x = SleepHrsNight), binwidth=1)
5

Có một cột duy nhất được gọi là

library(tidyverse)
library(mosaic)
52, với mỗi mục biểu thị tỷ lệ được tính toán từ một mẫu bootstrap duy nhất. Bây giờ chúng ta có thể kiểm tra phân phối lấy mẫu này và tính toán khoảng tin cậy 95%, như thế này

ggplot(NHANES_sleep) + 
  geom_histogram(aes(x = SleepHrsNight), binwidth=1)
6

Bootstrapping dữ liệu Khoa học

ggplot(NHANES_sleep) + 
  geom_histogram(aes(x = SleepHrsNight), binwidth=1)
7

ggplot(NHANES_sleep) + 
  geom_histogram(aes(x = SleepHrsNight), binwidth=1)
8

Vì vậy, dự đoán tốt nhất của chúng tôi là 20. 3% người Mỹ đôi khi cảm thấy chán nản. Ngoài ra, dựa trên mẫu, chúng tôi tin tưởng 95% rằng tỷ lệ dân số thực sự nằm trong khoảng từ 18. 5% và 22. 1%. Khoảng thời gian đó thể hiện sự không chắc chắn thống kê của chúng tôi

Một vấn đề khác

Một lần nữa chúng ta hãy cẩn thận để phân biệt khoảng tin cậy này với phân phối dữ liệu, thông qua một “gotcha. ”

Đúng hay sai. biểu đồ này và khoảng tin cậy liên quan, cho chúng tôi biết rằng khoảng 95% người Mỹ bị trầm cảm ở đâu đó giữa 18. 5% và 22. 1% số ngày của họ

lại SAI. Sự thay đổi trong phân phối dữ liệu rộng hơn nhiều so với điều này. Một số người Mỹ bị trầm cảm mỗi ngày. Một số người Mỹ không bao giờ hoặc gần như không bao giờ bị trầm cảm. Khoảng thời gian này chỉ đơn giản là không cho chúng ta biết về sự thay đổi trong trải nghiệm trầm cảm của từng cá nhân người Mỹ. Thay vào đó, nó mô tả mức độ chính xác mà mẫu của chúng tôi cho phép chúng tôi ước tính tần suất trung bình dân số người Mỹ trải qua bất kỳ ngày trầm cảm nào (ước tính của chúng tôi)

Bootstrapping là gì và tại sao nó được sử dụng?

Khởi động là thuật ngữ được sử dụng trong kinh doanh để chỉ quá trình chỉ sử dụng các nguồn lực hiện có, chẳng hạn như tiền tiết kiệm cá nhân, thiết bị máy tính cá nhân và không gian nhà để xe, để bắt đầu và phát triển một doanh nghiệp. . .

Kỹ thuật bootstrapping là gì?

Phương pháp bootstrap là kỹ thuật thống kê để ước tính số lượng về tổng thể bằng cách lấy trung bình các ước tính từ nhiều mẫu dữ liệu nhỏ . Điều quan trọng là các mẫu được xây dựng bằng cách vẽ các quan sát từ một mẫu dữ liệu lớn tại một thời điểm và đưa chúng trở lại mẫu dữ liệu sau khi chúng được chọn.

Bootstrapping trong học tập là gì?

Trừu tượng. Giả thuyết khởi động ngữ nghĩa đề xuất rằng trẻ em tiếp thu ngôn ngữ mẹ đẻ của chúng thông qua việc tiếp xúc với các câu của ngôn ngữ đó kết hợp với các biểu diễn có cấu trúc về ý nghĩa của chúng , mà các cấu trúc con thành phần của chúng có thể được liên kết .

Khi nào tôi nên sử dụng bootstrapping?

Tôi thấy bootstrapping rất hữu ích trong hai tình huống chính. khi mẫu khá nhỏ (nhưng không nhỏ) và khi phân phối không sạch (giả sử đó là hỗn hợp của hai phân phối)