From c907ef5ff8d3b4db737a3dd2a5f09c72421945c8 Mon Sep 17 00:00:00 2001 From: Marco Colombo Date: Thu, 29 Jul 2021 10:09:23 +0100 Subject: [PATCH] Avoid error from rowMeans() if there is only one DMP. --- R/champ.DMP.R | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/R/champ.DMP.R b/R/champ.DMP.R index 034488a..045311a 100755 --- a/R/champ.DMP.R +++ b/R/champ.DMP.R @@ -135,7 +135,8 @@ champ.DMP <- function(beta = myNorm, com.idx <- intersect(rownames(DMPs[[i]]),rownames(probe.features)) if(!is.null(Compare)) { - avg <- cbind(rowMeans(beta[com.idx,which(pheno==Compare[[i]][1])]),rowMeans(beta[com.idx,which(pheno==Compare[[i]][2])])) + avg <- cbind(rowMeans(beta[com.idx, pheno==Compare[[i]][1], drop=FALSE]), + rowMeans(beta[com.idx, pheno==Compare[[i]][2], drop=FALSE])) avg <- cbind(avg,avg[,2]-avg[,1]) colnames(avg) <- c(paste(Compare[[i]],"AVG",sep="_"),"deltaBeta") DMPs[[i]] <- data.frame(DMPs[[i]][com.idx,],avg,probe.features[com.idx,])