Sửa giá trị p cho nhiều xét nghiệm trong đó các xét nghiệm có tương quan (di truyền)


24

Tôi có giá trị p từ rất nhiều bài kiểm tra và muốn biết liệu thực sự có điều gì đáng kể sau khi sửa cho nhiều bài kiểm tra hay không. Các biến chứng: các xét nghiệm của tôi không độc lập. Phương pháp tôi đang nghĩ về (một biến thể của Phương pháp sản phẩm của Fisher, Zaykin và cộng sự, Genet Epidemiol , 2002) cần sự tương quan giữa các giá trị p.

Để ước tính mối tương quan này, tôi hiện đang suy nghĩ về các trường hợp bootstrapping, chạy các phân tích và tương quan các vectơ kết quả của các giá trị p. Có ai có một ý tưởng tốt hơn? Hoặc thậm chí là một ý tưởng tốt hơn cho vấn đề ban đầu của tôi (sửa chữa cho nhiều thử nghiệm trong các thử nghiệm tương quan)?

Bối cảnh: Tôi đang hồi quy một cách logic về việc liệu các đối tượng của tôi có mắc một bệnh cụ thể nào về sự tương tác giữa kiểu gen của họ (AA, Aa hay aa) và đồng biến hay không. Tuy nhiên, kiểu gen thực sự là rất nhiều (30-250) của Đa hình Nucleotide đơn (SNPs), chắc chắn không độc lập mà ở trạng thái Mất cân bằng Liên kết.

Câu trả lời:


29

Đây thực sự là một chủ đề nóng trong các nghiên cứu phân tích Genomewide (GWAS)! Tôi không chắc phương pháp bạn đang nghĩ là phù hợp nhất trong bối cảnh này. Việc gộp các giá trị p được mô tả bởi một số tác giả, nhưng trong một bối cảnh khác (nghiên cứu sao chép hoặc phân tích tổng hợp, xem ví dụ (1) để xem xét gần đây). Kết hợp giá trị p SNP bằng phương pháp của Fisher thường được sử dụng khi người ta muốn lấy giá trị p duy nhất cho một gen nhất định; điều này cho phép làm việc ở cấp độ gen và giảm số lượng chiều của các thử nghiệm tiếp theo, nhưng như bạn đã nói, tính không độc lập giữa các điểm đánh dấu (phát sinh từ việc định vị không gian hoặc mất cân bằng liên kết, LD) đưa ra sai lệch. Các lựa chọn thay thế mạnh mẽ hơn dựa trên các quy trình lấy mẫu lại,

Mối quan tâm chính của tôi với bootstraping (có thể thay thế) là bạn đang giới thiệu một hình thức liên quan nhân tạo, hay nói cách khác là bạn tạo ra cặp song sinh ảo, do đó thay đổi trạng thái cân bằng Hardy-Weinberg (nhưng cũng có tần số alen tối thiểu và tốc độ cuộc gọi). Đây không phải là trường hợp với cách tiếp cận hoán vị khi bạn hoán vị các nhãn riêng lẻ và giữ dữ liệu kiểu gen như hiện tại. Thông thường, phần mềm plink có thể cung cấp cho bạn các giá trị p thô và được thấm, mặc dù nó sử dụng (theo mặc định) một chiến lược thử nghiệm thích ứng với một cửa sổ trượt cho phép dừng chạy tất cả các hoán vị (giả sử 1000 trên SNP) nếu SNP xuất hiện xem xét không "thú vị"; Nó cũng có tùy chọn để tính toán maxT, xem trợ giúp trực tuyến .

Nhưng với số lượng SNP thấp mà bạn đang xem xét, tôi sẽ đề nghị dựa vào các thử nghiệm dựa trên FDR hoặc maxT như được thực hiện trong multtest gói R (xem mt.maxT), nhưng hướng dẫn dứt khoát về chiến lược lấy mẫu lại cho ứng dụng là Nhiều quy trình thử nghiệm với Ứng dụng Genomics , từ Dudoit & van der Laan (Springer, 2008). Xem thêm cuốn sách về di truyền học với Andrea , được xem xét trong JSS. Cô ấy có tài liệu tuyệt vời về nhiều thủ tục kiểm tra.

Ghi chú thêm

Nhiều tác giả đã chỉ ra thực tế rằng nhiều phương pháp sửa lỗi thử nghiệm đơn giản như Bonferroni hoặc Sidak quá nghiêm ngặt để điều chỉnh kết quả cho từng SNPs. Hơn nữa, cả hai phương pháp này đều không tính đến mối tương quan tồn tại giữa các SNP do LD gắn thẻ biến đổi gen giữa các vùng gen. Một phương án khác đã được đề xuất, như một dẫn xuất của phương pháp Holm để so sánh nhiều (3), Mô hình Markov ẩn (4), FDR có điều kiện hoặc tích cực (5) hoặc dẫn xuất của chúng (6), để đặt tên cho một số ít. Cái gọi là thống kê khoảng cách hoặc cửa sổ trượt đã được chứng minh là thành công trong một số trường hợp, nhưng bạn sẽ tìm thấy một đánh giá tốt trong (7) và (8).

Tôi cũng đã nghe nói về các phương pháp sử dụng hiệu quả cấu trúc haplotype hoặc LD, ví dụ (9), nhưng tôi chưa bao giờ sử dụng chúng. Tuy nhiên, chúng dường như liên quan nhiều hơn đến việc ước tính mối tương quan giữa các điểm đánh dấu, chứ không phải giá trị p như bạn muốn nói. Nhưng trên thực tế, bạn có thể nghĩ tốt hơn về mặt cấu trúc phụ thuộc giữa các thống kê kiểm tra liên tiếp, hơn là giữa các giá trị p tương quan.

Tài liệu tham khảo

  1. Cantor, RM, Lange, K và Sinsheimer, JS. Ưu tiên kết quả GWAS: Đánh giá các phương pháp và khuyến nghị thống kê cho ứng dụng của họ . Là J Hum Genet. 2010 86 (1): 6 trận22.
  2. Corley, RP, Zeiger, JS, Crowley, T et al. Hiệp hội các gen ứng cử viên với sự phụ thuộc thuốc chống xã hội ở thanh thiếu niên . Sự phụ thuộc vào ma túy và rượu 2008 96: 90 nên98.
  3. Dalmasso, C, Génin, E và Trégouet DA. Một kế toán thủ tục có trọng số cho các tần số alen trong các nghiên cứu của Hiệp hội Genomewide . Di truyền học 2008 180 (1): 697
  4. Wei, Z, Sun, W, Wang, K và Hakonarson, H. Nhiều thử nghiệm trong nghiên cứu hiệp hội trên toàn bộ gen thông qua các mô hình Markov ẩn . Tin sinh học 2009 25 (21): 2802-2808.
  5. Broberg, P. Một đánh giá so sánh các ước tính về tỷ lệ gen không thay đổi và tỷ lệ phát hiện sai . BMC Tin sinh học 2005 6: 199.
  6. Cần, AC, Ge, D, Weale, ME, et a. Một cuộc điều tra trên toàn bộ bộ gen của SNP và CNV trong tâm thần phân liệt . Gen PLoS. 2009 5 (2): e1000373.
  7. Han, B, Kang, HM, và E Da, E. Hiệu chỉnh nhiều thử nghiệm chính xác và nhanh chóng cho hàng triệu điểm đánh dấu tương quan . Di truyền học PLoS 2009
  8. Liang, Y và Kelemen, A. Những tiến bộ và thách thức thống kê để phân tích dữ liệu snp chiều cao tương quan trong nghiên cứu bộ gen cho các bệnh phức tạp . Khảo sát thống kê 2008 2: 43 Hàng60. - đánh giá gần đây nhất
  9. Nyholt, DR. Một sửa chữa đơn giản cho nhiều thử nghiệm đối với các đa hình Nucleotide đơn trong sự mất cân bằng liên kết với nhau . Là J Hum Genet. 2004 74 (4): 765 Từ769.
  10. Nicodemus, KK, Liu, W, Chase, GA, Tsai, YY và Fallin, MD. So sánh lỗi loại I đối với nhiều hiệu chỉnh thử nghiệm trong các nghiên cứu đa hình đơn nucleotide lớn sử dụng các thành phần chính so với thuật toán chặn haplotype . BMC Di truyền học 2005; 6 (Bổ sung 1): S78.
  11. Các xét nghiệm khoảng tin cậy bootstrap dựa trên PC , Peng, Q, Zhao, J và Xue, F. PCA cho mối liên quan giữa bệnh và gen liên quan đến nhiều SNP . BMC Di truyền 2010, 11: 6
  12. Li, M, Romero, R, Fu, WJ và Cui, Y (2010). Ánh xạ tương tác Haplotype-haplotype với LASSO thích ứng . BMC Di truyền học 2010, 11:79 - mặc dù không liên quan trực tiếp đến câu hỏi, nhưng nó bao gồm phân tích dựa trên haplotype / hiệu ứng epistatic

1
Wow, cảm ơn vì đã đi đến tất cả những rắc rối này! Tôi hiểu kiến ​​thức của bạn về bootstrapping và tôi gần như bị thuyết phục. Tôi nghĩ rằng sự phức tạp chính của tôi là hiệp phương số mà tôi có chắc chắn sẽ cần thiết (tự nó hoặc tương tác với kiểu gen), và điều đó dường như loại trừ mt.maxT và plink, mặc dù tôi có thể cần phải xem xét lại. Nhưng tôi chắc chắn sẽ đào qua các tài liệu tham khảo bạn cung cấp!
S. Kolassa - Phục hồi lại

Bạn luôn có thể làm việc với phần còn lại của GLM để nhận được các đồng biến của mình, mặc dù bạn đã mất một số Df sẽ khó có thể tính toán hoặc giới thiệu lại sau đó (ví dụ: để tính giá trị p).
chl

Hừm, dư từ hồi quy logistic của tôi? Điều đó có hợp pháp không?
S. Kolassa - Phục hồi lại

Vâng, tại sao không? Không có gì lạ khi loại bỏ phương sai được tính bởi các hiệp phương sai khác và sau đó chuyển sang phân tích cấp 2 với dữ liệu còn lại của bạn. Nó thường nhanh hơn (ví dụ, plink khá chậm với các đồng biến phân loại, trong khi nó ổn với các liên tục; snpMatrixhoặc đơn giản là hoạt động glm()khá tốt ở điểm này nhưng bạn không thể nhúng nhiều SNP trong glm()...); vấn đề là việc lấy giá trị p đã sửa ở cuối phân tích thứ 2 của bạn khá khó khăn (vì bạn phải tính đến các tham số đã được ước tính).
chl

Để có một minh họa về cách mọi người làm việc với phần dư, xem ví dụ p. 466 của Heck và cộng sự. Điều tra 17 gen ứng cử viên cho các đặc điểm tính cách xác nhận ảnh hưởng của gen HTR2A đối với tìm kiếm mới lạ. Gen, não và hành vi (2009) vol. 8 (4) trang 464-72
chl

2

Sử dụng một phương pháp như bonferroni là tốt, vấn đề là nếu bạn có nhiều bài kiểm tra, bạn không có khả năng tìm thấy nhiều "khám phá".

Bạn có thể thực hiện phương pháp FDR cho các thử nghiệm phụ thuộc (xem chi tiết tại đây ) vấn đề là tôi không chắc liệu bạn có thể nói thẳng nếu mối tương quan của bạn là tất cả các kết quả dương tính hay không.

Trong R, bạn có thể thực hiện FDR đơn giản với p.adjust. Đối với những điều phức tạp hơn, tôi sẽ xem xét về multcomp , nhưng tôi đã không xem qua nó để tìm giải pháp trong trường hợp phụ thuộc.

Chúc may mắn.


1
Chào Tal, cảm ơn! Bonferroni dường như không phù hợp với tôi - nếu một trong những SNP của tôi nguyên nhân và những người khác có liên quan đến nó, thì nên có một tín hiệu và Bonferroni luôn tỏ ra quá bảo thủ đối với tôi (tôi thường thích điều chỉnh từng bước của Holm). FDR mà bạn liên kết đến và p.adjust không xem xét bằng chứng kết hợp (và FDR vẫn yêu cầu tôi hiểu mối tương quan của các xét nghiệm của tôi, câu hỏi ban đầu). multcomp có thể giúp đỡ, mặc dù thoạt nhìn nó có vẻ như nó đề cập nhiều hơn với nhiều thử nghiệm trong một đơn mô hình, trong khi tôi có nhiều mô hình. Tôi sẽ đào sâu hơn ...
S. Kolassa - Phục hồi Monica

Xin chào Stephan. Tôi hiểu, xin lỗi vì đã không giúp đỡ nhiều hơn. Chúc may mắn! Tal
Tal Galili

Xin chào Stephan, tôi vẫn nghĩ rằng bạn vẫn có thể sử dụng phương thức = BY (đối với Thủ tục Stewamini Hochberg Yekuteli) trong p.adjust in R, như Tal chỉ ra. Chắc chắn, sử dụng Bonferroni có thể bảo thủ.
suncoolsu

suncoolsu, tôi nghĩ rằng phương pháp này chỉ hoạt động khi tương quan là dương (không âm) giữa các biến. Chúc mừng.
Tal Galili

2

Tôi nghĩ rằng Mô hình thông thường nhiều biến số đang được sử dụng để mô hình hóa các giá trị p tương quan và để có được loại chỉnh sửa thử nghiệm phù hợp. Nhanh chóng và chính xác Nhiều thử nghiệm hiệu chỉnh và ước tính công suất cho hàng triệu điểm đánh dấu tương quan. PLoS Genet 2009 nói về họ và cũng đưa ra các tài liệu tham khảo khác. Nghe có vẻ giống như những gì bạn đang nói, nhưng tôi nghĩ ngoài việc điều chỉnh giá trị p toàn cầu chính xác hơn, kiến ​​thức về cấu trúc LD cũng nên được sử dụng để loại bỏ các kết quả dương phát sinh từ các dấu tương quan với các dấu hiệu nguyên nhân.


2

Tôi đang tìm kiếm một giải pháp làm việc cho chính xác cùng một vấn đề. Sản phẩm tốt nhất tôi tìm thấy là Bootstrap Null không giới hạn được giới thiệu bởi hôi của Andrea trong cuốn sách Ứng dụng di truyền thống kê với R (2009) . Trái ngược với tất cả các bài báo và sách khác, ông coi cụ thể là hồi quy. Bên cạnh các phương pháp khác, ông khuyên dùng Bootstrap Null Unrestricted Bootstrap, phù hợp khi người ta không thể dễ dàng tính toán phần dư (như trong trường hợp của tôi, trong đó tôi mô hình nhiều hồi quy độc lập (tương quan đơn giản), mỗi biến có cùng một biến phản ứng và snip khác nhau). Tôi thấy phương thức này còn được gọi là phương thức maxT .

> attach(fms)
> Actn3Bin <- > data.frame(actn3_r577x!="TT",actn3_rs540874!="AA",actn3_rs1815739!="TT",actn3_1671064!="GG")
> Mod <- summary(lm(NDRM.CH~.,data=Actn3Bin))
> CoefObs <- as.vector(Mod$coefficients[-1,1]) 
> B <-1000
> TestStatBoot <- matrix(nrow=B,ncol=NSnps)
> for (i in 1:B){
+    SampID <- sample(1:Nobs,size=Nobs, replace=T)
+    Ynew <- NDRM.CH[!MissDat][SampID]
+    Xnew <- Actn3BinC[SampID,]
+    CoefBoot <- summary(lm(Ynew~.,data=Xnew))$coefficients[-1,1]
+    SEBoot <- summary(lm(Ynew~.,data=Xnew))$coefficients[-1,2]
+    if (length(CoefBoot)==length(CoefObs)){
+       TestStatBoot[i,] <- (CoefBoot-CoefObs)/SEBoot
+    }
+ }

Khi chúng ta có tất cả TestStatBootma trận (trong các hàng chúng ta có các bản sao bootstrap và trong các cột chúng ta đã bootstrappingT*^ thống kê) chúng tôi tìm thấy Tphê bình chúng tôi quan sát chính xác α= =0,05 phần trăm quan trọng hơn T*^ thống kê (có ý nghĩa hơn có nghĩa là với giá trị tuyệt đối lớn hơn Tphê bình).

Chúng tôi báo cáo tôi-thành phần thành phần quan trọng, nếu nó Ttôi^>Tphê bình

Bước cuối cùng có thể được thực hiện với mã này

p.value<-0.05 # The target alpha threshold
digits<-1000000
library(gtools) # for binsearch

pValueFun<-function(cj)
{
   mean(apply(abs(TestStatBoot)>cj/digits,1,sum)>=1,na.rm=T)
}
ans<-binsearch(pValueFun,c(0.5*digits,100*digits),target=p.value)
p.level<-(1-pnorm(q=ans$where[[1]]/digits))*2 #two-sided.
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.