## Use first three samples of the builtin dataset
sample_root <- system.file("extdata", package = "iGC")
sample_desc_pth <- file.path(sample_root, "sample_desc.csv")
sample_desc <- create_sample_desc(
sample_desc_pth, sample_root=sample_root
)[1:3]
## Define custom reader function for TCGA level 3 gene exp. data
my_cna_reader <- function(cna_filepath) {
cna <- data.table::fread(cna_filepath, sep = '\t', header = TRUE)
data.table::setnames(
cna,
c("Sample", "Chromosome", "Start", "End", "Num_Probes", "Segment_Mean")
)
# pick only the needed columns
cna[, .(Chromosome, Start, End, Segment_Mean)]
}
## Read all samples' CNA data and combined as a single table
gene_cna <- create_gene_cna(
sample_desc,
gain_threshold = log2(2.3) - 1, loss_threshold = log2(1.7) - 1,
read_fun = my_cna_reader,
)
gene_cna[GENE %in% c("BRCA2", "TP53", "SEMA5A"), ]
## To boost the speed, utilize parallelization
doMC::registerDoMC(4) # number of CPU cores
gene_cna <- create_gene_cna(
sample_desc,
gain_threshold = log2(2.3) - 1, loss_threshold = log2(1.7) - 1,
read_fun = my_cna_reader,
parallel = TRUE
)Run the code above in your browser using DataLab