Phân tích kết quả thử nghiệm A / B thường không được phân phối, sử dụng thử nghiệm t độc lập


13

Tôi có một bộ kết quả từ thử nghiệm A / B (một nhóm kiểm soát, một nhóm tính năng) không phù hợp với Phân phối chuẩn. Trong thực tế, phân phối gần giống với phân phối Landau hơn.

Tôi tin rằng thử nghiệm t độc lập yêu cầu các mẫu ít nhất được phân phối bình thường, điều này không khuyến khích tôi sử dụng thử nghiệm t như một phương pháp thử nghiệm quan trọng hợp lệ.

Nhưng câu hỏi của tôi là: Tại thời điểm nào người ta có thể nói rằng kiểm tra t không phải là một phương pháp tốt để kiểm tra ý nghĩa?

Hoặc đặt một cách khác, làm thế nào người ta có thể đủ điều kiện độ tin cậy của các giá trị p của kiểm tra t, chỉ được cung cấp cho tập dữ liệu?

Câu trả lời:


8

Việc phân phối dữ liệu của bạn không cần phải bình thường, đó là Phân phối lấy mẫu phải gần như bình thường. Nếu cỡ mẫu của bạn đủ lớn, thì phân phối mẫu của phương tiện từ Phân phối Landau phải gần như bình thường, do Định lý giới hạn trung tâm .

Vì vậy, điều đó có nghĩa là bạn sẽ có thể sử dụng t-test một cách an toàn với dữ liệu của mình.

Thí dụ

Hãy xem xét ví dụ này: giả sử chúng ta có một quần thể có phân phối Lognatural với mu = 0 và sd = 0,5 (có vẻ hơi giống với Landau)

mật độ logic

Vì vậy, chúng tôi lấy mẫu 30 quan sát 5000 lần từ phân phối này mỗi lần tính giá trị trung bình của mẫu

Và đây là những gì chúng ta nhận được

phân phối mẫu

Trông khá bình thường phải không? Nếu chúng ta tăng kích thước mẫu, nó thậm chí còn rõ ràng hơn

phân phối mẫu

Mã R

x = seq(0, 4, 0.05)
y = dlnorm(x, mean=0, sd=0.5)
plot(x, y, type='l', bty='n')


n = 30
m = 1000

set.seed(0)
samp = rep(NA, m)

for (i in 1:m) {
  samp[i] = mean(rlnorm(n, mean=0, sd=0.5))
}

hist(samp, col='orange', probability=T, breaks=25, main='sample size = 30')
x = seq(0.5, 1.5, 0.01)
lines(x, dnorm(x, mean=mean(samp), sd=sd(samp)))


n = 300
samp = rep(NA, m)

for (i in 1:m) {
  samp[i] = mean(rlnorm(n, mean=0, sd=0.5))
}

hist(samp, col='orange', probability=T, breaks=25, main='sample size = 300')
x = seq(1, 1.25, 0.005)
lines(x, dnorm(x, mean=mean(samp), sd=sd(samp)))

Xin chào, Alexei! Có vẻ như bạn thành thạo R, vì vậy tôi tự hỏi, nếu bạn có lời khuyên nào về vấn đề tôi hiện đang mắc kẹt: stackoverflow.com/questions/25101444/ Lỗi . Ngoài ra, tôi rất vui được kết nối với bạn (xem aleksandrblekh.com để biết hồ sơ của tôi trên các mạng xã hội chuyên nghiệp), vì dường như chúng tôi có một số sở thích chung (bao gồm cả ngôn ngữ bản địa :-).
Alexanderr Blekh

Đây là một lời giải thích tuyệt vời, và trên thực tế là phương pháp mà tôi đã kết thúc bằng cách sử dụng. Tôi thích nghĩ về phương pháp này như chia toàn bộ tập hợp mẫu thành các mẫu phụ nhỏ hơn và sử dụng các phương tiện (trung bình với CLT) của mỗi mẫu phụ làm phân phối của tập dữ liệu. Cảm ơn câu trả lời!
teebszet

1

Về cơ bản, thử nghiệm t độc lập hoặc thử nghiệm t 2 mẫu được sử dụng để kiểm tra xem trung bình của hai mẫu có khác nhau đáng kể hay không. Hoặc, để nói một từ khác, nếu có sự khác biệt đáng kể giữa phương tiện của hai mẫu.

Bây giờ, phương tiện của 2 mẫu đó là hai thống kê, theo CLT, có phân phối bình thường, nếu được cung cấp đủ mẫu. Lưu ý rằng CLT hoạt động bất kể phân phối mà từ đó thống kê trung bình được xây dựng.

Thông thường người ta có thể sử dụng phép thử z, nhưng nếu phương sai được ước tính từ mẫu (vì không xác định được), một số độ không đảm bảo bổ sung được đưa ra, được kết hợp trong phân phối t. Đó là lý do tại sao thử nghiệm t 2 mẫu áp dụng ở đây.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.