data-raw/test-code/test-MAP-all-tested.R

sbs96 <-
  c(ACAA = 197L, ACCA = 113L, ACGA = 37L, ACTA = 120L, CCAA = 188L,  CCCA = 131L, CCGA = 45L, CCTA = 138L, GCAA = 132L, GCCA = 72L,  GCGA = 39L, GCTA = 103L, TCAA = 327L, TCCA = 195L, TCGA = 43L,  TCTA = 324L, ACAG = 83L, ACCG = 37L, ACGG = 18L, ACTG = 102L,  CCAG = 65L, CCCG = 45L, CCGG = 30L, CCTG = 86L, GCAG = 40L, GCCG = 38L,  GCGG = 17L, GCTG = 47L, TCAG = 879L, TCCG = 215L, TCGG = 47L,  TCTG = 1212L, ACAT = 254L, ACCT = 125L, ACGT = 307L, ACTT = 201L,  CCAT = 317L, CCCT = 285L, CCGT = 244L, CCTT = 357L, GCAT = 157L,  GCCT = 161L, GCGT = 251L, GCTT = 188L, TCAT = 1123L, TCCT = 428L,  TCGT = 268L, TCTT = 729L, ATAA = 121L, ATCA = 50L, ATGA = 77L,  ATTA = 131L, CTAA = 71L, CTCA = 58L, CTGA = 102L, CTTA = 90L,  GTAA = 49L, GTCA = 20L, GTGA = 74L, GTTA = 47L, TTAA = 163L,  TTCA = 45L, TTGA = 68L, TTTA = 106L, ATAC = 626L, ATCC = 76L,  ATGC = 290L, ATTC = 299L, CTAC = 186L, CTCC = 57L, CTGC = 111L,  CTTC = 130L, GTAC = 195L, GTCC = 42L, GTGC = 88L, GTTC = 123L,  TTAC = 256L, TTCC = 97L, TTGC = 125L, TTTC = 155L, ATAG = 36L,  ATCG = 17L, ATGG = 40L, ATTG = 73L, CTAG = 35L, CTCG = 14L, CTGG = 45L,  CTTG = 70L, GTAG = 18L, GTCG = 18L, GTGG = 35L, GTTG = 36L, TTAG = 50L,  TTCG = 32L, TTGG = 42L, TTTG = 105L)

id <-
  c("DEL:C:1:0" = 36L, "DEL:C:1:1" = 20L, "DEL:C:1:2" = 20L, "DEL:C:1:3" = 11L,  "DEL:C:1:4" = 8L, "DEL:C:1:5+" = 7L, "DEL:T:1:0" = 9L, "DEL:T:1:1" = 13L,  "DEL:T:1:2" = 13L, "DEL:T:1:3" = 16L, "DEL:T:1:4" = 14L, "DEL:T:1:5+" = 34L,  "INS:C:1:0" = 2L, "INS:C:1:1" = 3L, "INS:C:1:2" = 1L, "INS:C:1:3" = 1L,  "INS:C:1:4" = 2L, "INS:C:1:5+" = 5L, "INS:T:1:0" = 4L, "INS:T:1:1" = 12L,  "INS:T:1:2" = 3L, "INS:T:1:3" = 1L, "INS:T:1:4" = 2L, "INS:T:1:5+" = 81L,  "DEL:repeats:2:0" = 2L, "DEL:repeats:2:1" = 9L, "DEL:repeats:2:2" = 4L,  "DEL:repeats:2:3" = 6L, "DEL:repeats:2:4" = 0L, "DEL:repeats:2:5+" = 6L,  "DEL:repeats:3:0" = 5L, "DEL:repeats:3:1" = 4L, "DEL:repeats:3:2" = 0L,  "DEL:repeats:3:3" = 0L, "DEL:repeats:3:4" = 0L, "DEL:repeats:3:5+" = 0L,  "DEL:repeats:4:0" = 0L, "DEL:repeats:4:1" = 5L, "DEL:repeats:4:2" = 0L,  "DEL:repeats:4:3" = 0L, "DEL:repeats:4:4" = 0L, "DEL:repeats:4:5+" = 0L,  "DEL:repeats:5+:0" = 18L, "DEL:repeats:5+:1" = 3L, "DEL:repeats:5+:2" = 0L,  "DEL:repeats:5+:3" = 0L, "DEL:repeats:5+:4" = 0L, "DEL:repeats:5+:5+" = 0L,  "INS:repeats:2:0" = 1L, "INS:repeats:2:1" = 7L, "INS:repeats:2:2" = 5L,  "INS:repeats:2:3" = 0L, "INS:repeats:2:4" = 2L, "INS:repeats:2:5+" = 3L,  "INS:repeats:3:0" = 0L, "INS:repeats:3:1" = 2L, "INS:repeats:3:2" = 0L,  "INS:repeats:3:3" = 0L, "INS:repeats:3:4" = 1L, "INS:repeats:3:5+" = 0L,  "INS:repeats:4:0" = 2L, "INS:repeats:4:1" = 1L, "INS:repeats:4:2" = 0L,  "INS:repeats:4:3" = 0L, "INS:repeats:4:4" = 0L, "INS:repeats:4:5+" = 1L,  "INS:repeats:5+:0" = 1L, "INS:repeats:5+:1" = 3L, "INS:repeats:5+:2" = 0L,  "INS:repeats:5+:3" = 0L, "INS:repeats:5+:4" = 0L, "INS:repeats:5+:5+" = 0L,  "DEL:MH:2:1" = 7L, "DEL:MH:3:1" = 2L, "DEL:MH:3:2" = 4L, "DEL:MH:4:1" = 2L,  "DEL:MH:4:2" = 1L, "DEL:MH:4:3" = 1L, "DEL:MH:5+:1" = 12L, "DEL:MH:5+:2" = 11L,  "DEL:MH:5+:3" = 4L, "DEL:MH:5+:4" = 5L, "DEL:MH:5+:5+" = 2L)

sbs192 <-
  c(AAAC = 19L, AACC = 9L, AAGC = 16L, AATC = 15L, CAAC = 9L, CACC = 5L,  CAGC = 9L, CATC = 7L, GAAC = 11L, GACC = 3L, GAGC = 3L, GATC = 3L,  TAAC = 7L, TACC = 2L, TAGC = 6L, TATC = 9L, AAAG = 25L, AACG = 22L,  AAGG = 23L, AATG = 68L, CAAG = 23L, CACG = 19L, CAGG = 31L, CATG = 73L,  GAAG = 26L, GACG = 14L, GAGG = 10L, GATG = 22L, TAAG = 63L, TACG = 43L,  TAGG = 35L, TATG = 161L, AAAT = 22L, AACT = 14L, AAGT = 19L,  AATT = 35L, CAAT = 12L, CACT = 14L, CAGT = 23L, CATT = 22L, GAAT = 10L,  GACT = 2L, GAGT = 13L, GATT = 13L, TAAT = 41L, TACT = 13L, TAGT = 22L,  TATT = 30L, ACAA = 32L, ACCA = 25L, ACGA = 8L, ACTA = 21L, CCAA = 36L,  CCCA = 37L, CCGA = 13L, CCTA = 33L, GCAA = 24L, GCCA = 16L, GCGA = 6L,  GCTA = 19L, TCAA = 74L, TCCA = 68L, TCGA = 9L, TCTA = 101L, ACAG = 21L,  ACCG = 11L, ACGG = 7L, ACTG = 22L, CCAG = 12L, CCCG = 9L, CCGG = 11L,  CCTG = 24L, GCAG = 13L, GCCG = 6L, GCGG = 6L, GCTG = 10L, TCAG = 239L,  TCCG = 62L, TCGG = 11L, TCTG = 341L, ACAT = 47L, ACCT = 22L,  ACGT = 73L, ACTT = 36L, CCAT = 63L, CCCT = 45L, CCGT = 64L, CCTT = 84L,  GCAT = 30L, GCCT = 40L, GCGT = 62L, GCTT = 34L, TCAT = 310L,  TCCT = 98L, TCGT = 80L, TCTT = 166L, AGAA = 157L, AGCA = 42L,  AGGA = 83L, AGTA = 51L, CGAA = 63L, CGCA = 69L, CGGA = 61L, CGTA = 81L,  GGAA = 100L, GGCA = 35L, GGGA = 73L, GGTA = 33L, TGAA = 253L,  TGCA = 34L, TGGA = 73L, TGTA = 73L, AGAC = 306L, AGCC = 14L,  AGGC = 17L, AGTC = 16L, CGAC = 17L, CGCC = 5L, CGGC = 7L, CGTC = 5L,  GGAC = 50L, GGCC = 4L, GGGC = 13L, GGTC = 9L, TGAC = 236L, TGCC = 10L,  TGGC = 11L, TGTC = 23L, AGAT = 60L, AGCT = 21L, AGGT = 25L, AGTT = 24L,  CGAT = 9L, CGCT = 9L, CGGT = 16L, CGTT = 9L, GGAT = 47L, GGCT = 17L,  GGGT = 26L, GGTT = 27L, TGAT = 81L, TGCT = 32L, TGGT = 43L, TGTT = 53L,  ATAA = 26L, ATCA = 6L, ATGA = 10L, ATTA = 34L, CTAA = 10L, CTCA = 10L,  CTGA = 24L, CTTA = 14L, GTAA = 9L, GTCA = 2L, GTGA = 14L, GTTA = 11L,  TTAA = 32L, TTCA = 8L, TTGA = 13L, TTTA = 19L, ATAC = 112L, ATCC = 20L,  ATGC = 59L, ATTC = 60L, CTAC = 32L, CTCC = 15L, CTGC = 26L, CTTC = 37L,  GTAC = 32L, GTCC = 6L, GTGC = 18L, GTTC = 23L, TTAC = 42L, TTCC = 22L,  TTGC = 27L, TTTC = 49L, ATAG = 10L, ATCG = 8L, ATGG = 9L, ATTG = 21L,  CTAG = 9L, CTCG = 5L, CTGG = 8L, CTTG = 18L, GTAG = 6L, GTCG = 7L,  GTGG = 11L, GTTG = 10L, TTAG = 18L, TTCG = 6L, TTGG = 4L, TTTG = 26L )

dbs78 <-
  c(ACCA = 0L, ACCG = 0L, ACCT = 0L, ACGA = 0L, ACGG = 0L, ACGT = 0L,  ACTA = 1L, ACTG = 0L, ACTT = 1L, ATCA = 0L, ATCC = 0L, ATCG = 0L,  ATGA = 0L, ATGC = 0L, ATTA = 1L, CCAA = 18L, CCAG = 2L, CCAT = 6L,  CCGA = 1L, CCGG = 0L, CCGT = 2L, CCTA = 1L, CCTG = 0L, CCTT = 4L,  CGAT = 0L, CGGC = 0L, CGGT = 0L, CGTA = 0L, CGTC = 0L, CGTT = 1L,  CTAA = 2L, CTAC = 0L, CTAG = 3L, CTGA = 0L, CTGC = 0L, CTGG = 0L,  CTTA = 1L, CTTC = 0L, CTTG = 1L, GCAA = 3L, GCAG = 0L, GCAT = 0L,  GCCA = 0L, GCCG = 0L, GCTA = 0L, TAAT = 1L, TACG = 0L, TACT = 0L,  TAGC = 0L, TAGG = 0L, TAGT = 0L, TCAA = 6L, TCAG = 1L, TCAT = 7L,  TCCA = 1L, TCCG = 0L, TCCT = 0L, TCGA = 0L, TCGG = 0L, TCGT = 1L,  TGAA = 0L, TGAC = 0L, TGAT = 2L, TGCA = 1L, TGCC = 0L, TGCT = 1L,  TGGA = 1L, TGGC = 0L, TGGT = 1L, TTAA = 0L, TTAC = 0L, TTAG = 0L,  TTCA = 0L, TTCC = 1L, TTCG = 0L, TTGA = 0L, TTGC = 0L, TTGG = 1L )


foo <- ICAMS::ReadCatalog(file = "inst/extdata/DBS78-mSigAct-example-spectra.csv")
foo1 <- foo[, 1, drop = F]
test.fn <- function(spect, sig.mutation.type, cancer.type = "Lung-AdenoCA") {
  mm <- mSigAct::DefaultManyOpts()
  mm$trace <- 0
  mm$global.opts$maxeval <- 1000 # A small value for testing
  # mm$local.opts$print_options_doc <- TRUE
  # mm$local.opts$print_level <- 2
  mm$local.opts$tol_constraints_ineq <- 10
  
  sigs <-PCAWG7::signature$genome[[sig.mutation.type]]
  
  sig.prop <- ExposureProportions(mutation.type = sig.mutation.type,
                                  cancer.type = cancer.type,
                                  all.sigs = sigs)
  
  set.seed(101010, kind = "L'Ecuyer-CMRG")
  retval <- MAPAssignActivity1(
    spect                   = spect,
    sigs                    = sigs,
    sigs.presence.prop      = sig.prop,
    max.level               = 100,
    p.thresh                = 0.01,
    m.opts                  = mm,
    max.mc.cores            = 1,
    max.subsets             = 1000,
    max.presence.proportion = 0.99)
  return(retval)
}


retval <- test.fn(spect = foo1,
                  sig.mutation.type = "DBS78")

test_that("MAPAssignActivity SBS96", {
  retval <- test.fn(spect = sbs96, "SBS96")
  testthat::expect_equal(
    retval$MAP$count,
    c(SBS1 = 635.255985834199, SBS2 = 1939.32173112431,
      SBS5 = 8705.08084819072,  SBS8 = 1455.34198826826,
      SBS13 = 2618.99944658252),
    tolerance = 1e-3)
})

test_that("MAPAssignActivity SBS192", {
  retval <- test.fn(spect = sbs192,
                    sig.mutation.type = "SBS192")
  testthat::expect_equal(
    retval$MAP$count,
    c(SBS1 = 509.712341010996, SBS2 = 871.375080961353, SBS5 = 3187.80110383402,
      SBS13 = 1521.46804094734, SBS40 = 1107.64343324629),
    tolerance = 1e-5)
})

test_that("MAPAssignActivity ID", {
  retval <- test.fn(spect = id,
                    sig.mutation.type = "ID")
  testthat::expect_equal(
    retval$MAP$count,
    c(ID1 = 76.1872826514142, ID2 = 41.829148548392, ID3 = 137.178076886561,
      ID4 = 23.8033223583356, ID5 = 91.5921757511388, ID8 = 71.3594277434867,
      ID10 = 18.0505660606712),
    tolerance = 1e-6)
})

test_that("MAPAssignActivity DBS78", {
  retval <- test.fn(spect = dbs78,
                    sig.mutation.type = "DBS78")
  testthat::expect_equal(
    retval$MAP$count,
    c(DBS2 = 28.2327526583232,
      DBS4 = 9.69903696258126,
      DBS6 = 12.4508152488636,
      DBS11 = 22.617395130232),
    tolerance = 1e-5
  )
})
steverozen/mSigAct.server documentation built on July 9, 2023, 4:52 a.m.