Sự cố này phát sinh khi tôi đang cố gắng sử dụng p.adjust
để chạy điều chỉnh FDR trên vectơ có giá trị p. Vấn đề là nhiều giá trị p kết quả giống hệt nhau. Tôi nghĩ rằng điều này có thể là một số không gian với dữ liệu của tôi, nhưng tôi đã tái tạo cùng một vấn đề này với các vectơ đầu vào tùy ý. Ví dụ:R: kết quả không mong muốn từ p.adjust (FDR)
temp <- runif(40, min = 0, max = 1)
temp
# [1] 0.81563482 0.17471363 0.74697979 0.88755248 0.69676260 0.58207008
# [7] 0.87138747 0.76432908 0.64352955 0.06501659 0.70680646 0.81557281
#[13] 0.58480274 0.19476004 0.01035137 0.46119840 0.17783440 0.71828874
#[19] 0.30978182 0.76902202 0.01615609 0.93122152 0.37936458 0.52369562
#[25] 0.90997054 0.30098383 0.70873206 0.71159740 0.38148526 0.78415579
#[31] 0.64605509 0.18898361 0.76770495 0.40651004 0.42255944 0.68395505
#[37] 0.51844368 0.25855720 0.12090991 0.50110836
p.adjust(temp, method="fdr")
# [1] 0.9062609 0.9062609 0.9062609 0.9312215 0.9062609 0.9062609 0.9312215
# [8] 0.9062609 0.9062609 0.8668878 0.9062609 0.9062609 0.9062609 0.9062609
#[15] 0.3231218 0.9062609 0.9062609 0.9062609 0.9062609 0.9062609 0.3231218
#[22] 0.9312215 0.9062609 0.9062609 0.9312215 0.9062609 0.9062609 0.9062609
#[29] 0.9062609 0.9062609 0.9062609 0.9062609 0.9062609 0.9062609 0.9062609
#[36] 0.9062609 0.9062609 0.9062609 0.9062609 0.9062609
Tôi muốn nghĩ rằng mình đang mắc lỗi. Tôi không tin điều đó là hợp lý để FDR điều chỉnh giá trị p cho tất cả cùng một giá trị. Hầu hết dữ liệu giống hệt nhau và không phải tất cả đều phù hợp với giá trị p ban đầu. Bất kỳ ý tưởng gì là sai ở đây? Cảm ơn.
Tôi nghĩ bạn sẽ thấy nó chạy như mong đợi. Thử 'temp <- runif (5, min = 0, max = .005)' rồi 'p.adj <- sapply (p.adjust.methods, hàm (meth) p.adjust (temp, meth))' để cho tất cả các phương pháp điều chỉnh. –