Skip to content

Commit

Permalink
fix AverageExpression when subsetting features + returning Seurat object
Browse files Browse the repository at this point in the history
  • Loading branch information
andrewwbutler committed Jul 13, 2020
1 parent 042c04f commit ed4e8e6
Showing 1 changed file with 12 additions and 1 deletion.
13 changes: 12 additions & 1 deletion R/utilities.R
Original file line number Diff line number Diff line change
Expand Up @@ -340,10 +340,22 @@ AverageExpression <- function(
assay = names(x = data.return)[1],
...
)
toRet <- SetAssayData(
object = toRet,
assay = names(x = data.return)[1],
slot = "data",
new.data = log1p(x = as.matrix(x = data.return[[1]]))
)
#for multimodal data
if (length(x = data.return) > 1) {
for (i in 2:length(x = data.return)) {
toRet[[names(x = data.return)[i]]] <- CreateAssayObject(counts = data.return[[i]])
toRet <- SetAssayData(
object = toRet,
assay = names(x = data.return)[i],
slot = "data",
new.data = log1p(x = as.matrix(x = data.return[[i]]))
)
}
}
if (DefaultAssay(object = object) %in% names(x = data.return)) {
Expand All @@ -356,7 +368,6 @@ AverageExpression <- function(
ordered = TRUE
)
# finish setting up object if it is to be returned
toRet <- NormalizeData(object = toRet, verbose = verbose)
toRet <- ScaleData(object = toRet, verbose = verbose)
return(toRet)
} else {
Expand Down

0 comments on commit ed4e8e6

Please sign in to comment.