cran / Rediscover

:exclamation: This is a read-only mirror of the CRAN R package repository. Rediscover — Identify Mutually Exclusive Mutations
0 stars 0 forks source link

P_value and accepted results #1

Open aeeckhou opened 2 hours ago

aeeckhou commented 2 hours ago

Hello,

I am currently analyzing a dataset of tumors from different patients (171 patients), with each several mutations (in 170 genes). I want to assess the gene that are mutually exclusive and those who are co-occurent in the dataset. I have the function "discoversomaticInteractions", allowing me to generate a table with pValue, OddsRatio and the pair of gene analyzed, along with a nice visualization of the interactions between my gene.

My table : gene1 gene2 pValue OddsRatio 00 11 01 10 Event pair event_ratio TET2 PRRC2C 0.0008754013 3.057793 128 17 17 9 NA PRRC2C, TET2 17/26 SPEN TP53 0.0021338900 -2.670828 87 9 46 29 NA SPEN, TP53 9/75 NOTCH2 PRRC2C 0.0023754897 2.624247 127 16 18 10 NA NOTCH2, PRRC2C 16/28 EP300 ARID1A 0.0030133890 2.520945 138 11 12 10 NA ARID1A, EP300 11/22 STAT6 KMT2D 0.0035741349 2.446829 114 18 35 4 NA KMT2D, STAT6 18/39 ARID1A TET2 0.0048790823 2.311662 134 12 14 11 NA ARID1A, TET2 12/25

I have several questions :

1. The pValue is not corrected if I am not mistaken. I have put two thresholds like in the vignette, 0.01 & 0.002. I am wondering if those in a publication are acceptable ? Shouldn't I correct it ?

Here is a sum-up of the data :

> str(B_results)
Classes ‘data.table’ and 'data.frame':  435 obs. of  11 variables:
 $ gene1      : chr  "TET2" "SPEN" "NOTCH2" "EP300" ...
 $ gene2      : chr  "PRRC2C" "TP53" "PRRC2C" "ARID1A" ...
 $ pValue     : num  0.000875 0.002134 0.002375 0.003013 0.003574 ...
 $ OddsRatio  : num  3.06 -2.67 2.62 2.52 2.45 ...
 $ 00         : int  128 87 127 138 114 134 119 114 99 110 ...
 $ 11         : int  17 9 16 11 18 12 19 3 6 21 ...
 $ 01         : int  17 46 18 12 35 14 18 33 44 32 ...
 $ 10         : int  9 29 10 10 4 11 15 21 22 8 ...
 $ Event      : logi  NA NA NA NA NA NA ...
 $ pair       : chr  "PRRC2C, TET2" "SPEN, TP53" "NOTCH2, PRRC2C" "ARID1A, EP300" ...
 $ event_ratio: chr  "17/26" "9/75" "16/28" "11/22" ...
 - attr(*, ".internal.selfref")=<externalptr>

> B_results$pValue
  [1] 0.0008754013 0.0021338900 0.0023754897 0.0030133890 0.0035741349 0.0048790823 0.0049803401 0.0054970904 0.0056287244 0.0061589726
 [11] 0.0085105194 0.0093664140 0.0111784111 0.0111926396 0.0115813399 0.0123700593 0.0129968338 0.0141254288 0.0146407506 0.0154703712
 [21] 0.0161384437 0.0161384437 0.0166285397 0.0174802210 0.0179931653 0.0181384527 0.0188635661 0.0202502641 0.0215081757 0.0215081757
 [31] 0.0225296964 0.0225840695 0.0234875953 0.0257938576 0.0267018441 0.0280835783 0.0281990566 0.0284299113 0.0286239566 0.0290654999
 [41] 0.0305149500 0.0306350713 0.0313781824 0.0319837235 0.0321841454 0.0322953394 0.0324783858 0.0356766976 0.0360518620 0.0360518620
 [51] 0.0367544502 0.0386409464 0.0392055693 0.0406656617 0.0407849224 0.0409603501 0.0413285411 0.0417429202 0.0417429202 0.0418047952
 [61] 0.0424181223 0.0432881687 0.0442296822 0.0448810254 0.0450160142 0.0453690151 0.0455628537 0.0466643505 0.0477166839 0.0477300565
 [71] 0.0479093639 0.0479648444 0.0479648444 0.0482496904 0.0484751746 0.0496694908 0.0511392902 0.0520294894 0.0521060096 0.0543570562
 [81] 0.0551436948 0.0551436948 0.0552891105 0.0560053302 0.0570566181 0.0581606884 0.0583749055 0.0589737781 0.0589737781 0.0589737781
 [91] 0.0600416331 0.0612236544 0.0627528031 0.0627528031 0.0647699615 0.0647699615 0.0647985451 0.0665723436 0.0672389575 0.0673029513
[101] 0.0679536431 0.0681869083 0.0683977761 0.0684167689 0.0684548371 0.0685265950 0.0687685910 0.0687759139 0.0690835064 0.0694527348
[111] 0.0694527348 0.0697165019 0.0698895573 0.0708110734 0.0719530705 0.0723319115 0.0727158013 0.0733560251 0.0745344919 0.0754790074
[121] 0.0759736685 0.0770613668 0.0770613668 0.0770613668 0.0772520990 0.0784611153 0.0784888511 0.0786615828 0.0809180857 0.0840367489
[131] 0.0843189434 0.0848935271 0.0852310543 0.0852310543 0.0869623147 0.0872284651 0.0876506684 0.0886346500 0.0896074805 0.0896074805
[141] 0.0896747382 0.0905143614 0.0905143614 0.0915493169 0.0919813529 0.0919826900 0.0937497160 0.0940211042 0.0950572851 0.0953407216
[151] 0.0957176317 0.0966907237 0.0988285428 0.1011572007 0.1022283537 0.1022283537 0.1022283537 0.1022283537 0.1024573994 0.1036354786
[161] 0.1048583382 0.1048583382 0.1050675169 0.1057795430 0.1070062898 0.1070062898 0.1081495299 0.1081495299 0.1081495299 0.1097986472
[171] 0.1097986472 0.1111133012 0.1117592065 0.1123504592 0.1128108814 0.1128108814 0.1133467758 0.1133790800 0.1133790800 0.1138454290
[181] 0.1154984350 0.1164048571 0.1164048571 0.1164048571 0.1164048571 0.1164048571 0.1166033308 0.1167089648 0.1186553424 0.1193857414
[191] 0.1213895506 0.1215524806 0.1222720195 0.1223784870 0.1232134986 0.1232134986 0.1232627760 0.1248522324 0.1248522324 0.1248522324
[201] 0.1251933164 0.1256497420 0.1264976748 0.1272745051 0.1272745051 0.1303758913 0.1303758913 0.1303758913 0.1309540161 0.1309540161
[211] 0.1318065726 0.1352423016 0.1368040142 0.1368040142 0.1368040142 0.1374500430 0.1374800871 0.1386116665 0.1396657404 0.1396975262
[221] 0.1396975262 0.1398178260 0.1401408041 0.1413569581 0.1413569581 0.1415591178 0.1415591178 0.1421447711 0.1421959989 0.1422712064
[231] 0.1430887520 0.1441740318 0.1450139240 0.1453271302 0.1453417105 0.1456235356 0.1460299802 0.1473452575 0.1473452575 0.1473452575
[241] 0.1473452575 0.1473452575 0.1473452575 0.1477049567 0.1483768376 0.1496604233 0.1496604233 0.1497957290 0.1499665257 0.1499665257
[251] 0.1499665257 0.1499830201 0.1522346159 0.1522484387 0.1522484387 0.1527979765 0.1531893574 0.1557199143 0.1557341023 0.1557341023
[261] 0.1561602065 0.1561710735 0.1578795530 0.1589160217 0.1597559735 0.1615136189 0.1615136189 0.1627035195 0.1641171905 0.1643798404
[271] 0.1643798404 0.1645326125 0.1645326125 0.1645747741 0.1645747741 0.1645747741 0.1645747741 0.1651105461 0.1656609871 0.1672783872
[281] 0.1673866286 0.1673866286 0.1699526166 0.1699526166 0.1699526166 0.1709507226 0.1715951819 0.1725099350 0.1731182339 0.1736469459
[291] 0.1736469459 0.1736469459 0.1737433895 0.1743970754 0.1754447307 0.1754447307 0.1757682102 0.1763170612 0.1763170612 0.1776619513
[301] 0.1777334906 0.1777771085 0.1780676073 0.1787146218 0.1787146218 0.1801015950 0.1801015950 0.1801015950 0.1813942680 0.1816809964
[311] 0.1816809964 0.1816809964 0.1816809964 0.1818974227 0.1818974227 0.1818974227 0.1818974227 0.1818974227 0.1818974227 0.1820570748
[321] 0.1821704420 0.1821704420 0.1839628866 0.1844086529 0.1884449869 0.1890260033 0.1890260033 0.1890260033 0.1894862339 0.1894862339
[331] 0.1894862339 0.1901562539 0.1905773343 0.1908316313 0.1912188236 0.1912188236 0.1912188236 0.1912188236 0.1931852611 0.1931852611
[341] 0.1935548521 0.1940034016 0.1941701694 0.1947334784 0.1947334784 0.1947334784 0.1948352536 0.1948674754 0.1950165156 0.1964134279
[351] 0.1983070539 0.1991609831 0.1991609831 0.1991609831 0.2004498100 0.2005316251 0.2014339730 0.2014853698 0.2026887222 0.2040519463
[361] 0.2040519463 0.2066059962 0.2068503094 0.2074402289 0.2086565127 0.2086565127 0.2090579093 0.2103337470 0.2103583669 0.2105879375
[371] 0.2114028415 0.2146361080 0.2148942049 0.2157243866 0.2157243866 0.2160353788 0.2162299470 0.2162299470 0.2164502396 0.2165593542
[381] 0.2170392806 0.2175572289 0.2179771489 0.2180037102 0.2187072988 0.2200896881 0.2203304585 0.2204750545 0.2207240427 0.2208759912
[391] 0.2212312624 0.2223796814 0.2223796814 0.2246598689 0.2258970906 0.2261589447 0.2266680054 0.2276627204 0.2280894787 0.2283079154
[401] 0.2287998938 0.2287998938 0.2287998938 0.2287998938 0.2287998938 0.2287998938 0.2301345371 0.2310400500 0.2319392701 0.2319392701
[411] 0.2328085301 0.2341121054 0.2341121054 0.2341121054 0.2342281810 0.2377656443 0.2388443156 0.2388443156 0.2402815437 0.2412299828
[421] 0.2412490921 0.2413763201 0.2420646234 0.2448692588 0.2451404989 0.2452121826 0.2469924907 0.2469924907 0.2469924907 0.2493304996
[431] 0.2493304996 0.2493752804 0.2496911501 0.2496911501 0.2496911501

I tried this command below, but got this error that I have not understand (I checked the structure, don't see any NA or Inf values).

> qvalue(B_results$pValue)
Error in smooth.spline(lambda, pi0, df = smooth.df) : 
  missing or infinite value are not autorized as input

I tried also this but got the exact same corrected value, I guess there are too many events, but I would have expected pValue more

> p.adjust(B_results$pValue, method = "BH") [1] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [14] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [27] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [40] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [53] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [66] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [79] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [92] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [105] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [118] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [131] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [144] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [157] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [170] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [183] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [196] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [209] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [222] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [235] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [248] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [261] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [274] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [287] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [300] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [313] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [326] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 [339] 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2430722 0.2441138 0.2447317 [352] 0.2447317 0.2447317 0.2447317 0.2448216 0.2448216 0.2448216 0.2448216 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 [365] 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 [378] 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 [391] 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 0.2451427 [404] 0.2451427 0.2451427 0.2451427 0.2455163 0.2455163 0.2455163 0.2455163 0.2455163 0.2455163 0.2455163 0.2455163 0.2455163 0.2485581 [417] 0.2485581 0.2485581 0.2488121 0.2488121 0.2488121 0.2488121 0.2489317 0.2496912 0.2496912 0.2496912 0.2496912 0.2496912 0.2496912 [430] 0.2496912 0.2496912 0.2496912 0.2496912 0.2496912 0.2496912

2. Even if the correction doesn't work, what is your opinion on exploiting the results of the "discoversomaticInteractions" function as it is ? Here is an exemple of an output.

mutual_exclusive_co_occurence

3. The "Event" column value is always NA. Can I change it to "co-occurrent" when the OddsRatio is positive, and "mutual_exclusive" when it is negative ?

Complete code :

merged_table_final = read.table("FINAL_TABLE_ANNOTATED.txt", sep = "\t", header = TRUE)

merged_table_final = merged_table_final %>% mutate_all(~ gsub("nonsynonymous SNV", "Missense_Mutation", .))
merged_table_final = merged_table_final %>% mutate_all(~ gsub("stoploss", "Stop_Codon_Del", .))
merged_table_final = merged_table_final %>% mutate_all(~ gsub("stopgain", "Nonsense_Mutation", .))
merged_table_final = merged_table_final %>% mutate_all(~ gsub("startloss", "Translation_Start_Site", .))

mutations_data <- merged_table_final %>%
  select(Sample, Gene.refGene) %>%
  distinct()

mutations_matrix <- mutations_data %>%
  mutate(value = 1) %>%
  spread(Sample, value, fill = 0) %>%
  column_to_rownames("Gene.refGene")
mutations_matrix
dim(mutations_matrix) # 170 171

mutations_matrix_data_frame = as.data.frame(mutations_matrix)

names(merged_table_final)[names(merged_table_final) == 'Gene.refGene'] <- 'Hugo_Symbol'
names(merged_table_final)[names(merged_table_final) == 'Chr'] <- 'Chromosome'
names(merged_table_final)[names(merged_table_final) == 'Start'] <- 'Start_Position'
names(merged_table_final)[names(merged_table_final) == 'End'] <- 'End_Position'
names(merged_table_final)[names(merged_table_final) == 'Ref'] <- 'Reference_Allele'
names(merged_table_final)[names(merged_table_final) == 'Alt'] <- 'Tumor_Seq_Allele2'
names(merged_table_final)[names(merged_table_final) == 'Func.refGene'] <- 'Variant_Type'
names(merged_table_final)[names(merged_table_final) == 'ExonicFunc.refGene'] <- 'Variant_Classification'
names(merged_table_final)[names(merged_table_final) == 'NIP'] <- 'Tumor_Sample_Barcode'

merged_table_final$Variant_Type = "SNP"

A = read.maf(merged_table_final)

B_results = discoversomaticInteractions(maf = A, top = 40, pvalue = c(1e-2, 2e-3), pvSymbols = c(42, 43),
                                        getMutexMixed=FALSE)
gaborcsardi commented 2 hours ago

Hi, this is a read only mirror of CRAN, please see the package authors in the DESCRIPTION file. Look for Maintainer, BugReports and URL. Thanks!