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
)
#> ℹ [2025-12-25 15:37:46.729995]: Started.
#> ℹ [2025-12-25 15:37:46.731706]: Genome build : hg19.
#> ℹ [2025-12-25 15:37:46.73324]: Genome measure: wg.
#> ℹ [2025-12-25 15:37:46.734784]: When add_loh is TRUE, use_all is forced to TRUE.
#> Please drop columns you don't want to keep before reading.
#> ✔ [2025-12-25 15:37:46.738961]: Chromosome size database for build obtained.
#> ℹ [2025-12-25 15:37:46.740525]: Reading input.
#> ✔ [2025-12-25 15:37:46.742114]: A data frame as input detected.
#> ✔ [2025-12-25 15:37:46.743775]: Column names checked.
#> ✔ [2025-12-25 15:37:46.74547]: Column order set.
#> ✔ [2025-12-25 15:37:46.749035]: Chromosomes unified.
#> ✔ [2025-12-25 15:37:46.765439]: Value 2 (normal copy) filled to uncalled chromosomes.
#> ✔ [2025-12-25 15:37:46.769789]: Data imported.
#> ℹ [2025-12-25 15:37:46.771391]: Segments info:
#> ℹ [2025-12-25 15:37:46.772943]: Keep - 477
#> ℹ [2025-12-25 15:37:46.774627]: Drop - 0
#> ✔ [2025-12-25 15:37:46.776767]: Segments sorted.
#> ℹ [2025-12-25 15:37:46.778311]: Adding LOH labels...
#> ℹ [2025-12-25 15:37:46.780536]: Joining adjacent segments with same copy number value. Be patient...
#> ✔ [2025-12-25 15:37:46.94352]: 410 segments left after joining.
#> ✔ [2025-12-25 15:37:46.945798]: Segmental table cleaned.
#> ℹ [2025-12-25 15:37:46.947356]: Annotating.
#> ✔ [2025-12-25 15:37:46.961759]: Annotation done.
#> ℹ [2025-12-25 15:37:46.963364]: Summarizing per sample.
#> ✔ [2025-12-25 15:37:46.976843]: Summarized.
#> ℹ [2025-12-25 15:37:46.978431]: Generating CopyNumber object.
#> ✔ [2025-12-25 15:37:46.980492]: Generated.
#> ℹ [2025-12-25 15:37:46.982034]: Validating object.
#> ✔ [2025-12-25 15:37:46.983593]: Done.
#> ℹ [2025-12-25 15:37:46.9852]: 0.255 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
# }