From 537f69a98b053a07473cf6248b6a3cd3f75aa19e Mon Sep 17 00:00:00 2001 From: Zewen Kelvin Tuong Date: Tue, 10 Dec 2024 12:00:11 +1000 Subject: [PATCH 1/2] Update combineExpression.R --- R/combineExpression.R | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/R/combineExpression.R b/R/combineExpression.R index 227731d6..04310818 100644 --- a/R/combineExpression.R +++ b/R/combineExpression.R @@ -203,9 +203,7 @@ combineExpression <- function(input.data, full_data <- merge(colData(sc.data), PreMeta[rownames, , drop = FALSE], by = "row.names", all.x = TRUE) rownames(full_data) <- full_data[, 1] full_data <- full_data[, -1] - colData(sc.data) <- DataFrame(full_data[, combined_col_names]) - - rownames(colData(sc.data)) <- rownames + colData(sc.data) <- DataFrame(full_data[, combined_col_names]) } if (filterNA) { sc.data <- .filteringNA(sc.data) From 4a2e080b39fedb783ca086caaa767e00014555b5 Mon Sep 17 00:00:00 2001 From: Zewen Kelvin Tuong Date: Tue, 10 Dec 2024 12:48:26 +1000 Subject: [PATCH 2/2] force the merged data to match the input order --- R/combineExpression.R | 2 ++ 1 file changed, 2 insertions(+) diff --git a/R/combineExpression.R b/R/combineExpression.R index 04310818..1c0f7b75 100644 --- a/R/combineExpression.R +++ b/R/combineExpression.R @@ -201,6 +201,8 @@ combineExpression <- function(input.data, combined_col_names <- unique(c(colnames(colData(sc.data)), colnames(PreMeta))) full_data <- merge(colData(sc.data), PreMeta[rownames, , drop = FALSE], by = "row.names", all.x = TRUE) + # at this point, the rows in full_data are shuffled. match back with the original colData + full_data <- full_data[match(rownames, full_data[,1]), ] rownames(full_data) <- full_data[, 1] full_data <- full_data[, -1] colData(sc.data) <- DataFrame(full_data[, combined_col_names])