R/get_pLOH_score.R
get_pLOH_score.RdpLOH score represents the genome that displayed LOH.
get_pLOH_score(data, rm_chrs = c("chrX", "chrY"), genome_build = "hg19")a CopyNumber object or a data.frame containing at least
'chromosome', 'start', 'end', 'segVal', "minor_cn", 'sample' these columns.
chromosomes to be removed in calculation. Default is sex chromosomes (recommended).
genome build version, should be 'hg19', 'hg38', 'mm9' or 'mm10'.
A data.frame
Steele, Christopher D., et al. "Signatures of copy number alterations in human cancer." bioRxiv (2021).
# \donttest{
# Load toy dataset of absolute copynumber profile
load(system.file("extdata", "toy_segTab.RData",
package = "sigminer", mustWork = TRUE
))
set.seed(1234)
segTabs$minor_cn <- sample(c(0, 1), size = nrow(segTabs), replace = TRUE)
cn <- read_copynumber(segTabs,
seg_cols = c("chromosome", "start", "end", "segVal"),
genome_measure = "wg", complement = TRUE, add_loh = TRUE
)
#> ℹ [2026-09-27 01:00:40.835602]: Started.
#> ℹ [2026-09-27 01:00:40.836635]: Genome build : hg19.
#> ℹ [2026-09-27 01:00:40.837498]: Genome measure: wg.
#> ℹ [2026-09-27 01:00:40.838298]: When add_loh is TRUE, use_all is forced to TRUE.
#> Please drop columns you don't want to keep before reading.
#> ✔ [2026-09-27 01:00:40.840871]: Chromosome size database for build obtained.
#> ℹ [2026-09-27 01:00:40.84176]: Reading input.
#> ✔ [2026-09-27 01:00:40.842573]: A data frame as input detected.
#> ✔ [2026-09-27 01:00:40.843452]: Column names checked.
#> ✔ [2026-09-27 01:00:40.844408]: Column order set.
#> ✔ [2026-09-27 01:00:40.846489]: Chromosomes unified.
#> ✔ [2026-09-27 01:00:40.855512]: Value 2 (normal copy) filled to uncalled chromosomes.
#> ✔ [2026-09-27 01:00:40.858048]: Data imported.
#> ℹ [2026-09-27 01:00:40.858975]: Segments info:
#> ℹ [2026-09-27 01:00:40.863882]: Keep - 477
#> ℹ [2026-09-27 01:00:40.86473]: Drop - 0
#> ✔ [2026-09-27 01:00:40.865892]: Segments sorted.
#> ℹ [2026-09-27 01:00:40.866714]: Adding LOH labels...
#> ℹ [2026-09-27 01:00:40.868011]: Joining adjacent segments with same copy number value. Be patient...
#> ✔ [2026-09-27 01:00:40.951814]: 410 segments left after joining.
#> ✔ [2026-09-27 01:00:40.953424]: Segmental table cleaned.
#> ℹ [2026-09-27 01:00:40.954367]: Annotating.
#> ✔ [2026-09-27 01:00:40.962965]: Annotation done.
#> ℹ [2026-09-27 01:00:40.963897]: Summarizing per sample.
#> ✔ [2026-09-27 01:00:40.971842]: Summarized.
#> ℹ [2026-09-27 01:00:40.972747]: Generating CopyNumber object.
#> ✔ [2026-09-27 01:00:40.973962]: Generated.
#> ℹ [2026-09-27 01:00:40.974802]: Validating object.
#> ✔ [2026-09-27 01:00:40.975635]: Done.
#> ℹ [2026-09-27 01:00:40.976484]: 0.141 secs elapsed.
df <- get_pLOH_score(cn)
df
#> sample pLOH
#> <char> <num>
#> 1: TCGA-05-4417-01A-22D-1854-01 0.3909788
#> 2: TCGA-06-0644-01A-02D-0310-01 0.5511234
#> 3: TCGA-19-2621-01B-01D-0911-01 0.3154956
#> 4: TCGA-26-6174-01A-21D-1842-01 0.5771739
#> 5: TCGA-99-7458-01A-11D-2035-01 0.5248894
#> 6: TCGA-A5-A0G2-01A-11D-A042-01 0.6509913
#> 7: TCGA-A8-A07S-01A-11D-A036-01 0.4353611
#> 8: TCGA-B6-A0X5-01A-21D-A107-01 0.3938989
#> 9: TCGA-CV-7432-01A-11D-2128-01 0.3113043
#> 10: TCGA-DF-A2KN-01A-11D-A17U-01 0.4588324
df2 <- get_pLOH_score(cn@data)
df2
#> sample pLOH
#> <char> <num>
#> 1: TCGA-05-4417-01A-22D-1854-01 0.3909788
#> 2: TCGA-06-0644-01A-02D-0310-01 0.5511234
#> 3: TCGA-19-2621-01B-01D-0911-01 0.3154956
#> 4: TCGA-26-6174-01A-21D-1842-01 0.5771739
#> 5: TCGA-99-7458-01A-11D-2035-01 0.5248894
#> 6: TCGA-A5-A0G2-01A-11D-A042-01 0.6509913
#> 7: TCGA-A8-A07S-01A-11D-A036-01 0.4353611
#> 8: TCGA-B6-A0X5-01A-21D-A107-01 0.3938989
#> 9: TCGA-CV-7432-01A-11D-2128-01 0.3113043
#> 10: TCGA-DF-A2KN-01A-11D-A17U-01 0.4588324
# }