หากเราต้องการทำการทดสอบแบบจับคู่ความต้องการคือ (ถ้าฉันเข้าใจอย่างถูกต้อง) ว่าความแตกต่างเฉลี่ยระหว่างหน่วยการวัดที่ตรงกันจะถูกกระจายตามปกติ
ในการทดสอบ t-test แบบคู่ซึ่งเป็นข้อต่อ (AFAIK) ในความต้องการว่าความแตกต่างระหว่างหน่วยการวัดที่ตรงกันจะถูกกระจายตามปกติ (แม้ว่าการกระจายตัวของกลุ่มเปรียบเทียบทั้งสองกลุ่มจะไม่ปกติ)
อย่างไรก็ตามในการทดสอบแบบไม่จับคู่เราไม่สามารถพูดคุยเกี่ยวกับความแตกต่างระหว่างหน่วยที่ตรงกันดังนั้นเราต้องการให้การสังเกตจากทั้งสองกลุ่มเป็นเรื่องปกติเพื่อให้ความแตกต่างของค่าเฉลี่ยของพวกเขาเป็นเรื่องปกติ ซึ่งทำให้ฉันคำถามของฉัน:
เป็นไปได้หรือไม่สำหรับการแจกแจงแบบไม่ปกติสองแบบเพื่อให้ความแตกต่างของค่าเฉลี่ยถูกกระจายตามปกติ (และตอบสนองความต้องการที่จำเป็นของเราในการดำเนินการทดสอบ t ที่ไม่มีคู่กับพวกเขา - อีกครั้ง - เท่าที่ฉันเข้าใจ)
อัปเดต: (ขอบคุณทุกคำตอบ) ฉันเห็นว่ากฎทั่วไปที่เรากำลังมองหาคือความแตกต่างของค่าเฉลี่ยจะเป็นเรื่องปกติซึ่งน่าจะเป็นข้อสันนิษฐานที่ดี (ต่ำกว่าพอ n) เนื่องจาก CLT นี่เป็นสิ่งที่น่าอัศจรรย์สำหรับฉัน (ไม่น่าแปลกใจเพียงแค่น่าอัศจรรย์) สำหรับวิธีการนี้สำหรับการทดสอบแบบไม่ใช้คู่ แต่ไม่ได้ผลสำหรับการทดสอบตัวอย่างแบบเดี่ยว นี่คือรหัส R เพื่อแสดง:
n1 <- 10
n2 <- 10
mean1 <- 50
mean2 <- 50
R <- 10000
# diffs <- replicate(R, mean(rexp(n1, 1/mean1)) - mean(runif(n2, 0, 2*mean2)))
# hist(diffs)
P <- numeric(R)
MEAN <- numeric(R)
for(i in seq_len(R))
{
y1 <- rexp(n1, 1/mean1)
y2 <- runif(n2, 0, 2*mean2)
MEAN[i] <- mean(y1) - mean(y2)
P[i] <- t.test(y1,y2)$p.value
}
# diffs <- replicate(R, mean(rexp(n1, 1/mean1)) - mean(runif(n2, 0, 2*mean2)))
par(mfrow = c(1,2))
hist(P)
qqplot(P, runif(R)); abline(0,1)
sum(P<.05) / R # for n1=n2=10 -> 0.0715 # wrong type I error, but only for small n1 and n2 (for larger ones, this effect disappears)
n1 <- 100
mean1 <- 50
R <- 10000
P_y1 <- numeric(R)
for(i in seq_len(R))
{
y1 <- rexp(n1, 1/mean1)
P_y1[i] <- t.test(y1 , mu = mean1)$p.value
}
par(mfrow = c(1,2))
hist(P_y1)
qqplot(P_y1, runif(R)); abline(0,1)
sum(P_y1<.05) / R # for n1=n2=10 -> 0.057 # "wrong" type I error
ขอบคุณ