From 4de83925fd9a78f71eeac32c338f1ffa06f6f87a Mon Sep 17 00:00:00 2001 From: Andre Date: Thu, 5 Dec 2024 14:23:48 +0800 Subject: [PATCH] return distTable now returns intermediate distTable --- R/bambu-assignDist.R | 4 ++-- R/bambu_utilityFunctions.R | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/R/bambu-assignDist.R b/R/bambu-assignDist.R index 1408acc1..ef44b127 100644 --- a/R/bambu-assignDist.R +++ b/R/bambu-assignDist.R @@ -6,7 +6,7 @@ assignReadClasstoTranscripts <- function(readClassList, annotations, isoreParame verbose, demultiplexed, spatial, returnDistTable = FALSE, trackReads = TRUE) { if (is.character(readClassList)) readClassList <- readRDS(file = readClassList) - metadata(readClassList)$readClassDist <- calculateDistTable(readClassList, annotations, isoreParameters, verbose) + metadata(readClassList)$readClassDist <- calculateDistTable(readClassList, annotations, isoreParameters, verbose, returnDistTable) readClassList = splitReadClassFiles(readClassList) readClassDt <- genEquiRCs(metadata(readClassList)$readClassDist, annotations, verbose) readClassDt$eqClass.match = match(readClassDt$eqClassById,metadata(readClassList)$eqClassById) @@ -33,7 +33,7 @@ assignReadClasstoTranscripts <- function(readClassList, annotations, isoreParame metadata(quantData)$incompatibleCountMatrix = metadata(readClassList)$incompatibleCountMatrix metadata(quantData)$sampleNames = metadata(readClassList)$sampleNames if(returnDistTable){ - metadata(quantData)$distTable = metadata(readClassList)$readClassDist + metadata(quantData)$distTable = metadata(metadata(readClassList)$readClassDist)$distTableOld } if (trackReads){ metadata(quantData)$readToTranscriptMap = diff --git a/R/bambu_utilityFunctions.R b/R/bambu_utilityFunctions.R index 782b951e..db8a4626 100644 --- a/R/bambu_utilityFunctions.R +++ b/R/bambu_utilityFunctions.R @@ -225,13 +225,14 @@ handleWarnings <- function(readClassList, verbose){ } #' Calculate the dist table used for Bambu Quantification -calculateDistTable <- function(readClassList, annotations, isoreParameters, verbose){ +calculateDistTable <- function(readClassList, annotations, isoreParameters, verbose, returnDistTable){ readClassDist <- isore.estimateDistanceToAnnotations(readClassList, annotations, min.exonDistance = isoreParameters[["min.exonDistance"]], min.primarySecondaryDist = isoreParameters[['min.primarySecondaryDist']], min.primarySecondaryDistStartEnd = isoreParameters[['min.primarySecondaryDistStartEnd2']], verbose = verbose) metadata(readClassDist)$distTable <- modifyIncompatibleAssignment(metadata(readClassDist)$distTable) + if(returnDistTable) metadata(readClassDist)$distTableOld = metadata(readClassDist)$distTable #convert string gene ids into index to save memory GENEIDs = factor(unique(mcols(annotations)$GENEID)) GENEID.i = as.numeric(GENEIDs)