Hiểu khoảng tin cậy với Python

Nút nguồn: 1883080

Bài báo này đã được xuất bản như một phần của Blogathon Khoa học Dữ liệu.

Mục lục

  1. Giới thiệu
  2. Khoảng tin cậy với thống kê Z
  3. Diễn giải khoảng tin cậy
  4. Các giả định cho CI sử dụng thống kê z
  5. Khoảng tin cậy với thống kê t
  6. Các giả định cho CI sử dụng thống kê t
  7. Tạo khoảng thời gian t với dữ liệu được ghép nối
  8. z-value vs t-value: khi nào sử dụng cái gì?
  9. Khoảng tin cậy với python
  10. Ghi chú cuối

Giới thiệu

Bất cứ khi nào chúng ta giải quyết một vấn đề thống kê, chúng ta đều quan tâm đến việc ước lượng các tham số dân số nhưng thường thì gần như không thể tính được các tham số dân số. Thay vào đó, những gì chúng tôi làm là lấy mẫu ngẫu nhiên từ dân số và tính toán thống kê mẫu với kỳ vọng gần đúng với các tham số dân số. Nhưng làm thế nào chúng ta biết được liệu các mẫu có phải là đại diện thực sự của dân số hay không hoặc các số liệu thống kê mẫu này sai lệch bao nhiêu so với các thông số dân số? Đây là nơi mà khoảng tin cậy xuất hiện trong bức tranh. Vậy, những khoảng này là gì? Khoảng tin cậy là một dải giá trị nằm trên và dưới thống kê mẫu hoặc chúng ta cũng có thể định nghĩa nó là xác suất mà một dải giá trị xung quanh thống kê mẫu có chứa tham số dân số thực.

Khoảng tin cậy với thống kê Z

Trước khi đi sâu vào chủ đề, chúng ta hãy làm quen với một số thuật ngữ thống kê.

dân số: Nó là tập hợp của tất cả các cá thể giống nhau. Ví dụ dân số của một thành phố, sinh viên của một trường cao đẳng, v.v.

mẫu: Nó là một tập hợp nhỏ các cá thể giống nhau được rút ra từ quần thể. Tương tự, mẫu ngẫu nhiên là mẫu được lấy ngẫu nhiên từ tổng thể.

thông số: Giá trị trung bình (mu), độ lệch chuẩn (sigma), tỷ lệ (p) tính từ tổng thể.

thống kê: trung bình (x bar), độ lệch std (S), tỷ lệ (p ^) liên quan đến mẫu.

Điểm Z: nó là khoảng cách của bất kỳ điểm dữ liệu thô nào trên phân phối chuẩn từ giá trị trung bình được chuẩn hóa bởi độ lệch std. Được cho bởi: x-mu / sigma

Tất cả ngay bây giờ, chúng tôi đã sẵn sàng đi sâu vào khái niệm khoảng tin cậy. Vì một số lý do, tôi tin rằng tốt hơn nhiều nếu hiểu các khái niệm thông qua các ví dụ tương đối hơn là các định nghĩa toán học thô. Vậy hãy bắt đầu.

giả sử, bạn sống trong một thành phố có dân số 100,000 người và một cuộc bầu cử sắp diễn ra. Với tư cách là người thăm dò ý kiến, bạn phải dự đoán ai sẽ thắng cuộc bầu cử là đảng xanh hay đảng vàng. Vì vậy, bạn thấy hầu như không thể thu thập thông tin từ toàn bộ dân số nên bạn chọn ngẫu nhiên 100 người. Vào cuối cuộc khảo sát, bạn thấy rằng 62% mọi người sẽ bỏ phiếu cho màu vàng. Bây giờ câu hỏi đặt ra là chúng ta có nên kết luận rằng màu vàng sẽ thắng với xác suất thắng là 62% hay 62% toàn bộ dân số sẽ bỏ phiếu cho màu vàng? Vâng, câu trả lời là KHÔNG. Chúng tôi không biết chắc chắn ước tính của chúng tôi là bao xa so với thông số thực, nếu chúng tôi lấy một mẫu khác, kết quả có thể là 58% hoặc 65%. Vì vậy, thay vào đó, những gì chúng tôi sẽ làm là tìm một loạt các giá trị xung quanh thống kê mẫu của chúng tôi mà rất có thể sẽ nắm bắt được tỷ lệ dân số thực. Ở đây, tỷ lệ đề cập đến tỷ lệ phần trăm của

Khoảng tin cậy với Python

                                                                   hình ảnh thuộc về tác giả

Bây giờ, nếu chúng ta lấy một trăm mẫu như vậy và vẽ biểu đồ tỷ lệ mẫu của mỗi mẫu, chúng ta sẽ nhận được phân phối chuẩn của tỷ lệ lấy mẫu và giá trị trung bình của phân phối sẽ là giá trị gần đúng nhất của tỷ lệ dân số. Và ước tính của chúng tôi có thể nằm ở bất kỳ vị trí nào trên đường phân phối. Theo quy tắc 3-sigma, chúng ta biết rằng khoảng 95% các biến ngẫu nhiên nằm trong khoảng lệch 2 bậc so với giá trị trung bình của phân phối. Vì vậy, chúng ta có thể kết luận rằng xác suất p^ là trong vòng 2 độ lệch std của p là 95%. Hoặc chúng ta cũng có thể nói rằng xác suất p nằm trong khoảng lệch 2 bậc dưới và trên p ^ cũng là 95%. Hai câu lệnh này tương đương nhau về hiệu quả. Hai điểm bên dưới và bên trên p ^ là khoảng tin cậy của chúng tôi.

Khoảng tin cậy với Python

                                                           hình ảnh thuộc về tác giả

Nếu chúng ta bằng cách nào đó có thể tìm được sigma, chúng ta có thể tính toán khoảng thời gian cần thiết của chúng ta. Nhưng sigma ở đây là tham số dân số và chúng ta biết rằng nó thường gần như không thể tính được nên thay vào đó chúng ta sẽ sử dụng thống kê mẫu tức là Sai số chuẩn. Điều này được đưa ra dưới dạng

trong đó p ^ = tỷ lệ mẫu, n = số mẫu

SE =√ (0.62. 0.38 / 100) = 0.05

vì vậy, 2xSE = 0.1

Khoảng tin cậy cho dữ liệu của chúng tôi là (0.62-0.1,0.62 + 0.1) hoặc (0.52,0.72). Vì chúng tôi đã lấy 2xSE, điều này chuyển thành khoảng tin cậy 95%.

Bây giờ, câu hỏi đặt ra là nếu chúng ta muốn tạo khoảng tin cậy 92% thì sao? Trong ví dụ trước, chúng tôi nhân 2 với SE để tạo khoảng tin cậy 95%, 2 là điểm z cho khoảng tin cậy 95% (giá trị chính xác là 1.96) và giá trị này có thể được tìm thấy từ bảng z. Giá trị tới hạn của z trong khoảng tin cậy 92% là 1.75. Tham khảo điều này để hiểu rõ hơn về z-score và z-table.

Khoảng được cho bởi: (p ^ + z * .SE, p ^ -z * .SE).

Nếu thay vì tỷ lệ mẫu, trung bình của mẫu được đưa ra thì sai số chuẩn sẽ là sigma / sqrt (n). Đây sigma là độ lệch std tổng thể vì chúng ta thường không có, chúng ta sử dụng độ lệch std mẫu để thay thế. Nhưng người ta thường quan sát thấy rằng loại ước lượng này trong đó giá trị trung bình được đưa ra cho kết quả có xu hướng hơi chệch. Vì vậy, trong những trường hợp như thế này, nên sử dụng thống kê t thay vì thống kê z.

Công thức chung cho khoảng tin cậy với thống kê z được đưa ra bởi

Ở đây, thống kê đề cập đến trung bình mẫu hoặc tỷ lệ mẫu. sigmas là độ lệch chuẩn của dân số.

Diễn giải khoảng tin cậy

Điều thực sự quan trọng là phải diễn giải các khoảng tin cậy một cách chính xác. Hãy xem xét ví dụ về người thăm dò ý kiến ​​trước đó, nơi chúng tôi tính toán khoảng tin cậy 95% là (0.52,0.62). Điều đó nghĩa là gì? Chà, khoảng tin cậy 95% có nghĩa là nếu chúng ta lấy n mẫu từ tổng thể thì 95% thời gian khoảng bắt nguồn sẽ chứa tỷ lệ dân số thực. Hãy nhớ khoảng tin cậy 95% không có nghĩa là có 95% xác suất khoảng đó chứa tỷ lệ dân số thực. Ví dụ: đối với khoảng tin cậy 90% nếu chúng ta lấy 10 mẫu từ một tổng thể thì 9 trên 10 lần khoảng đã nói sẽ chứa tham số dân số thực. Nhìn vào hình dưới đây để hiểu rõ hơn.

Diễn giải khoảng tin cậy

                                                            hình ảnh thuộc về tác giả

Các giả định cho khoảng tin cậy sử dụng thống kê Z

Có một số giả định nhất định mà chúng ta cần tìm để xây dựng khoảng tin cậy hợp lệ bằng cách sử dụng thống kê z.

  1. Mẫu ngẫu nhiên: Các mẫu cần phải ngẫu nhiên. Có các phương pháp lấy mẫu khác nhau như lấy mẫu phân tầng, lấy mẫu ngẫu nhiên đơn giản, lấy mẫu theo cụm để lấy mẫu ngẫu nhiên.
  2. Điều kiện bình thường: Dữ liệu phải thỏa mãn điều kiện này np ^> = 10 và n. (1-p ^)> = 10. Về cơ bản, điều đó có nghĩa là sự phân bố lấy mẫu của chúng tôi đối với các phương tiện mẫu cần phải bình thường, không bị lệch về bên nào.
  3. Độc lập: Các mẫu cần phải độc lập. Số lượng mẫu cần nhỏ hơn hoặc bằng 10% tổng số mẫu hoặc nếu việc lấy mẫu được thực hiện thay thế.

Khoảng tin cậy với thống kê T

Điều gì sẽ xảy ra nếu kích thước mẫu tương đối nhỏ và độ lệch chuẩn tổng thể không được đưa ra hoặc không thể được giả định? Làm thế nào để chúng tôi xây dựng một khoảng tin cậy? tốt, đó là nơi thống kê t xuất hiện. Công thức cơ bản để tìm khoảng tin cậy ở đây vẫn giữ nguyên với chỉ z * được thay thế bằng t *. Công thức chung được đưa ra bởi

trong đó S = độ lệch chuẩn mẫu, n = số lượng mẫu

Giả sử, bạn tổ chức một bữa tiệc và bạn muốn ước tính mức tiêu thụ bia trung bình của khách. Vì vậy, bạn lấy một mẫu ngẫu nhiên gồm 20 người và đo lượng bia tiêu thụ. Dữ liệu mẫu đối xứng với giá trị trung bình 0f 1200 ml và độ lệch std là 120 ml. Vì vậy, bây giờ bạn muốn xây dựng khoảng tin cậy 95%.

Vì vậy, chúng tôi có độ lệch std của mẫu, số lượng mẫu và trung bình của mẫu. Tất cả những gì chúng ta cần là t *. Vì vậy, t * với khoảng tin cậy 95% với bậc tự do là 19 (n-1 = 20-1) là 2.093. Vì vậy, khoảng thời gian yêu cầu của chúng tôi là sau khi tính toán là (1256.16, 1143.83) với sai số là 56.16. Tham khảo điều này video để biết cách đọc bảng chữ t.

Các giả định cho CI sử dụng thống kê T

Tương tự như trường hợp thống kê z ở đây trong trường hợp thống kê t cũng có một số điều kiện chúng ta cần phải tìm trong dữ liệu đã cho.

  1. Mẫu cần phải ngẫu nhiên
  2. Mẫu phải bình thường. Để bình thường, kích thước mẫu phải lớn hơn hoặc bằng 30 hoặc nếu tập dữ liệu mẹ tức là dân số gần như bình thường. Hoặc nếu kích thước mẫu dưới 30 thì phân phối cần phải gần như đối xứng.
  3. Các quan sát cá nhân cần độc lập. Điều đó có nghĩa là nó tuân theo quy tắc 10% hoặc lấy mẫu được thực hiện với sự thay thế.

Tạo khoảng thời gian T cho dữ liệu được ghép nối

Cho đến nay chúng tôi chỉ sử dụng dữ liệu một mẫu. Bây giờ chúng ta sẽ xem cách chúng ta có thể xây dựng khoảng thời gian t cho dữ liệu được ghép nối. Trong dữ liệu được ghép nối, chúng tôi thực hiện hai quan sát trên cùng một cá nhân. Ví dụ: so sánh điểm trước và sau bài kiểm tra của sinh viên hoặc dữ liệu về ảnh hưởng của ma túy và giả dược trên một nhóm người. Trong dữ liệu được ghép nối, chúng tôi tìm thấy sự khác biệt giữa hai quan sát trong cột thứ 3. Như thường lệ, chúng ta cũng sẽ xem qua một ví dụ để hiểu khái niệm này,

Q. Một giáo viên đã cố gắng đánh giá ảnh hưởng của một chương trình giảng dạy mới đối với kết quả bài kiểm tra. Dưới đây là kết quả của các quan sát.

Khoảng thời gian T cho dữ liệu được ghép nối

                                                      hình ảnh thuộc về tác giả

Khi chúng ta dự định tìm khoảng thời gian cho sự khác biệt trung bình, chúng ta chỉ cần số liệu thống kê cho sự khác biệt. Chúng tôi sẽ sử dụng cùng một công thức mà chúng tôi đã sử dụng trước đây

thống kê + - (giá trị tới hạn hoặc giá trị t) (độ lệch chuẩn của thống kê)

xd = trung bình của sự khác biệt, Sd = độ lệch std mẫu, đối với CI 95% với bậc tự do 5 t * được cho bởi 2.57. Biên độ sai số = 0.97 và khoảng tin cậy (4.18,6.13).

Sự giải thích: Từ các ước lượng trên, chúng ta có thể thấy khoảng tin cậy không chứa giá trị XNUMX hoặc âm. Vì vậy, chúng tôi có thể kết luận rằng chương trình giảng dạy mới đã có tác động tích cực đến kết quả kiểm tra của học sinh. Nếu nó chỉ có giá trị tiêu cực thì chúng ta có thể nói rằng chương trình học có tác động tiêu cực. Hoặc nếu nó chứa số XNUMX thì có thể có khả năng sự khác biệt là XNUMX hoặc không có ảnh hưởng của chương trình giảng dạy đến kết quả kiểm tra.

Giá trị Z so với giá trị T

Có rất nhiều sự nhầm lẫn khi bắt đầu sử dụng cái gì. Quy tắc chung là khi kích thước mẫu> = 30 và độ lệch chuẩn dân số được biết là sử dụng thống kê z. Trong trường hợp cỡ mẫu <30, hãy sử dụng thống kê t. Trong cuộc sống thực, chúng ta không có các tham số dân số vì vậy chúng ta sẽ đi với z hoặc t dựa trên kích thước mẫu.

Với các mẫu nhỏ hơn (n <30), Định lý LImit trung tâm không áp dụng và một phân phối khác được gọi là phân phối t của Student được sử dụng. Phân phối t tương tự như phân phối chuẩn nhưng có các hình dạng khác nhau tùy thuộc vào kích thước mẫu. Thay vì giá trị z, giá trị t được sử dụng lớn hơn cho các mẫu nhỏ hơn, tạo ra sai số lớn hơn. Vì kích thước mẫu nhỏ sẽ kém chính xác hơn.

Khoảng tin cậy với Python

Python có một thư viện rộng lớn hỗ trợ tất cả các loại tính toán thống kê giúp cuộc sống của chúng ta dễ dàng hơn một chút. Trong phần này, chúng ta sẽ xem xét dữ liệu về thói quen ngủ của trẻ mới biết đi. 20 người tham gia các cuộc quan sát này đều khỏe mạnh, hành vi bình thường, không bị rối loạn giấc ngủ. Mục tiêu của chúng tôi là phân tích thời gian đi ngủ của trẻ mới biết đi ngủ trưa và không ngủ trưa.

Tham khảo: Akacem LD, Simpkin CT, Carskadon MA, Wright KP Jr, Jenni OG, Achermann P, et al. (2015) Thời gian của Đồng hồ Circadian và Giấc ngủ Khác nhau giữa Trẻ ngủ trưa và Trẻ không ngủ. PLoS ONE 10 (4): e0125181. https://doi.org/10.1371/journal.pone.0125181

Chúng tôi sẽ nhập các thư viện mà chúng tôi sẽ cần

nhập numpy dưới dạng np nhập gấu trúc dưới dạng pd từ scipy.stats import t pd.set_option ('display.max_columns', 30) # set để có thể xem tất cả các cột của phép toán nhập DataFrame
df = pd.read_csv (nap_no_nap.csv) # đọc dữ liệu
df.head ()
Khoảng tin cậy với Python

Tạo hai khoảng tin cậy 95% cho thời gian đi ngủ trung bình, một cho trẻ mới biết đi ngủ trưa và một cho trẻ mới biết đi ngủ trưa. Đầu tiên, chúng tôi sẽ tách cột 'giờ đi ngủ ban đêm' cho những người ngủ trưa thành một biến mới và những người không ngủ trưa thành một biến mới khác. Giờ đi ngủ ở đây được tính theo số thập phân.

bedtime_nap = df ['night bedtime']. loc [df ['napping'] == 1] bedtime_no_nap = df ['night bedtime']. loc [df ['napping'] == 0]

print (len (bedtime_nap))

print (len (bedtime_no_nap))

đầu ra: 15 n 5


Bây giờ, chúng ta sẽ tìm giờ đi ngủ trung bình cho giấc ngủ ngắn và no_nap.

nap_mean_bedtime = bedtime_nap.mean () # 20.304 no_nap_mean_bedtime = bedtime_no_nap.mean () # 19.59

Bây giờ, chúng ta sẽ tìm độ lệch chuẩn mẫu cho Xgiấc ngủ ngắn và Xkhông ngủ trưa 

nap_s_bedtime = np.std (bedtime_nap, ddof = 1) no_nap_s_bedtime = np.std (bedtime_no_nap, ddof = 1)

Lưu ý: Tham số ddof được đặt thành 1 cho nhà phát triển mẫu std nếu không nó sẽ trở thành nhà phát triển cấp độ dân số.

Bây giờ, chúng ta sẽ tìm lỗi chuẩn mẫu cho Xgiấc ngủ ngắn và Xkhông ngủ trưa 

nap_se_mean_bedtime = nap_s_bedtime / math.sqrt (len (bedtime_nap)) # 0.1526 no_nap_se_mean_bedtime = no_nap_s_bedtime / math.sqrt (len (bedtime_no_nap)) # 0.2270

Cho đến nay rất tốt, bây giờ khi kích thước mẫu nhỏ và chúng ta không có độ lệch chuẩn về tỷ lệ dân số, chúng ta sẽ sử dụng giá trị t *. Một cách để tìm giá trị t * là sử dụng scipy.stats t.ppf chức năng. Các đối số cho t.ppf () là q = phần trăm, df = bậc tự do, scale = std dev, loc = mean. Vì phân phối t là đối xứng với khoảng tin cậy 95% q sẽ là 0.975. Tham khảo điều này để biết thêm thông tin về t.ppf ().

nap_t_star = t.ppf (0.975, df = 14) # 2.14 no_nap_t_star = t.ppf (0.975, df = 5) # 2.57

Bây giờ, chúng tôi sẽ thêm các phần để cuối cùng xây dựng khoảng tin cậy của chúng tôi.

nap_ci_plus = nap_mean_bedtime + nap_t_star * nap_se_bedtime

nap_ci_minus = nap_mean_bedtime - nap_t_star * nap_se_bedtime

print (nap_ci_minus, nap_ci_plus)

no_nap_ci_plus = no_nap_mean_bedtime + no_nap_t_star * nap_se_bedtime

no_nap_ci_minus = no_nap_mean_bedtime - no_nap_t_star * nap_se_bedtime

print (no_nap_ci_minus, no_nap_ci_plus)


đầu ra: 19.976680775477412 20.631319224522585 18.95974084563192 20.220259154368087

Diễn dịch: 

Từ kết quả trên, chúng tôi kết luận rằng chúng tôi tin chắc 95% rằng giờ đi ngủ trung bình của trẻ mới biết đi ngủ trưa là từ 19.98 - 20.63 (chiều) trong khi đối với trẻ không ngủ trưa là từ 18.96 - 20.22 (chiều). Những kết quả này theo dự đoán của chúng tôi rằng nếu bạn ngủ trưa vào ban ngày, bạn sẽ ngủ muộn vào ban đêm.

Ghi chú cuối

Vì vậy, đây là tất cả về khoảng tin cậy đơn giản sử dụng các giá trị z và t. Nó thực sự là một khái niệm quan trọng cần biết trong trường hợp của bất kỳ nghiên cứu thống kê nào. Một phương pháp thống kê suy luận tuyệt vời để ước tính các tham số dân số từ dữ liệu mẫu. Khoảng tin cậy cũng liên quan đến việc kiểm tra giả thuyết rằng đối với KTC 95%, bạn để lại 5% khoảng trống cho sự bất thường. Nếu giả thuyết null nằm trong khoảng tin cậy thì giá trị p sẽ lớn và chúng ta sẽ không thể bác bỏ giá trị null. Ngược lại, nếu nó vượt quá thì chúng ta sẽ có đủ bằng chứng để bác bỏ giá trị rỗng và chấp nhận các giả thuyết thay thế.

Hy vọng bạn thích bài viết và chúc mừng năm mới (:

Phương tiện hiển thị trong bài viết này không thuộc sở hữu của Analytics Vidhya và được sử dụng theo quyết định riêng của Tác giả.

Nguồn: https://www.analyticsvidhya.com/blog/2022/01/und hieu-confidence-intervals-with-python/

Dấu thời gian:

Thêm từ Phân tích Vidhya