Skip to content

Commit bbef00f

Browse files
Merge pull request #72 from zhanghao-njmu/develop
Fixed a bug in the adata_to_srt function
2 parents f56e2cf + a389f71 commit bbef00f

File tree

4 files changed

+26
-24
lines changed

4 files changed

+26
-24
lines changed

R/SCP-analysis.R

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3687,13 +3687,13 @@ RunMonocle3 <- function(srt, annotation = NULL, assay = NULL, slot = "counts",
36873687
#' pancreas_sub <- RunDynamicFeatures(pancreas_sub, lineages = c("Lineage1", "Lineage2"), n_candidates = 200)
36883688
#' names(pancreas_sub@tools$DynamicFeatures_Lineage1)
36893689
#' head(pancreas_sub@tools$DynamicFeatures_Lineage1$DynamicFeatures)
3690-
#' ht_result <- DynamicHeatmap(
3690+
#' ht <- DynamicHeatmap(
36913691
#' srt = pancreas_sub,
36923692
#' lineages = c("Lineage1", "Lineage2"),
36933693
#' cell_annotation = "SubCellType",
36943694
#' n_split = 6, reverse_ht = "Lineage1"
36953695
#' )
3696-
#' ht_result$plot
3696+
#' ht$plot
36973697
#'
36983698
#' DynamicPlot(
36993699
#' srt = pancreas_sub,
@@ -3973,13 +3973,13 @@ RunDynamicFeatures <- function(srt, lineages, features = NULL, suffix = lineages
39733973
#' data("pancreas_sub")
39743974
#' pancreas_sub <- RunSlingshot(pancreas_sub, group.by = "SubCellType", reduction = "UMAP")
39753975
#' pancreas_sub <- RunDynamicFeatures(pancreas_sub, lineages = "Lineage1", n_candidates = 200)
3976-
#' ht_result1 <- DynamicHeatmap(
3976+
#' ht1 <- DynamicHeatmap(
39773977
#' srt = pancreas_sub,
39783978
#' lineages = "Lineage1",
39793979
#' cell_annotation = "SubCellType",
39803980
#' n_split = 4
39813981
#' )
3982-
#' ht_result1$plot
3982+
#' ht1$plot
39833983
#'
39843984
#' pancreas_sub <- RunDynamicEnrichment(
39853985
#' srt = pancreas_sub,
@@ -3988,15 +3988,15 @@ RunDynamicFeatures <- function(srt, lineages, features = NULL, suffix = lineages
39883988
#' db = "GO_BP",
39893989
#' species = "Mus_musculus"
39903990
#' )
3991-
#' ht_result2 <- DynamicHeatmap(
3991+
#' ht2 <- DynamicHeatmap(
39923992
#' srt = pancreas_sub,
39933993
#' assay = "GO_BP",
39943994
#' lineages = "Lineage1_GO_BP",
39953995
#' cell_annotation = "SubCellType",
39963996
#' n_split = 4,
39973997
#' split_method = "kmeans-peaktime"
39983998
#' )
3999-
#' ht_result2$plot
3999+
#' ht2$plot
40004000
#' @export
40014001
RunDynamicEnrichment <- function(srt, lineages,
40024002
score_method = "AUCell", ncore = 1,
@@ -4084,13 +4084,6 @@ RunDynamicEnrichment <- function(srt, lineages,
40844084
suffix = paste(lineages, term, sep = "_"),
40854085
assay = term
40864086
)
4087-
# ht_result <- DynamicHeatmap(
4088-
# srt = srt, assay = term,use_fitted = F,
4089-
# lineages = c("Lineage1", "Lineage2"),
4090-
# cell_annotation = "SubCellType",
4091-
# reverse_ht = 1, use_raster = F
4092-
# )
4093-
# ht_result$plot
40944087
}
40954088

40964089
time_end <- Sys.time()
@@ -4306,7 +4299,6 @@ adata_to_srt <- function(adata) {
43064299
rownames(x) <- adata$var_names$values
43074300
colnames(x) <- adata$obs_names$values
43084301

4309-
43104302
metadata <- NULL
43114303
if (length(adata$obs_keys()) > 0) {
43124304
metadata <- as.data.frame(adata$obs)
@@ -4318,11 +4310,11 @@ adata_to_srt <- function(adata) {
43184310
if (length(adata$layers$keys()) > 0) {
43194311
for (k in iterate(adata$layers$keys())) {
43204312
layer <- t(adata$layers[[k]])
4321-
rownames(layer) <- adata$var_names$values
4322-
colnames(layer) <- adata$obs_names$values
43234313
if (!inherits(layer, "dgCMatrix")) {
43244314
layer <- as.sparse(layer[1:nrow(layer), ])
43254315
}
4316+
rownames(layer) <- adata$var_names$values
4317+
colnames(layer) <- adata$obs_names$values
43264318
srt[[k]] <- CreateAssayObject(counts = layer)
43274319
}
43284320
}
@@ -4333,6 +4325,9 @@ adata_to_srt <- function(adata) {
43334325
warning("'obsm: ", k, "' will not be converted. You may need to convert it manually.", immediate. = TRUE)
43344326
next
43354327
}
4328+
if (!inherits(obsm, "matrix")) {
4329+
obsm <- as.matrix(obsm)
4330+
}
43364331
k <- gsub(pattern = "^X_", replacement = "", x = k)
43374332
colnames(obsm) <- paste0(k, "_", seq_len(ncol(obsm)))
43384333
rownames(obsm) <- adata$obs_names$values
@@ -4346,6 +4341,9 @@ adata_to_srt <- function(adata) {
43464341
warning("'obsp: ", k, "' will not be converted. You may need to convert it manually.", immediate. = TRUE)
43474342
next
43484343
}
4344+
if (!inherits(obsp, "dgCMatrix")) {
4345+
obsp <- as.sparse(obsp[1:nrow(obsp), ])
4346+
}
43494347
colnames(obsp) <- adata$obs_names$values
43504348
rownames(obsp) <- adata$obs_names$values
43514349
obsp <- as.Graph(obsp[seq_len(nrow(obsp)), ])
@@ -4364,6 +4362,9 @@ adata_to_srt <- function(adata) {
43644362
warning("'varm: ", k, "' will not be converted. You may need to convert it manually.", immediate. = TRUE)
43654363
next
43664364
}
4365+
if (!inherits(varm, "matrix")) {
4366+
varm <- as.matrix(varm)
4367+
}
43674368
colnames(varm) <- paste0(k, "_", seq_len(ncol(varm)))
43684369
rownames(varm) <- adata$var_names$values
43694370
srt[["RNA"]]@misc[["feature.loadings"]][[k]] <- varm
@@ -4376,6 +4377,9 @@ adata_to_srt <- function(adata) {
43764377
warning("'varp: ", k, "' will not be converted. You may need to convert it manually.", immediate. = TRUE)
43774378
next
43784379
}
4380+
if (!inherits(varp, "matrix")) {
4381+
varp <- as.matrix(varp)
4382+
}
43794383
colnames(varp) <- adata$var_names$values
43804384
rownames(varp) <- adata$var_names$values
43814385
srt[["RNA"]]@misc[["feature.graphs"]][[k]] <- varp

R/SCP-plot.R

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3691,7 +3691,6 @@ GroupHeatmap <- function(srt, features = NULL, group.by = NULL, split.by = NULL,
36913691
}
36923692
mat_raw[gene_unique, ] <- t(t(mat_raw[gene_unique, , drop = FALSE]) / libsize_use * median(libsize_use))
36933693
}
3694-
# dat <- cbind.data.frame([email protected][cells, group.by, drop = FALSE], t(mat_raw))
36953694

36963695
mat_raw_list <- list()
36973696
mat_perc_list <- list()
@@ -3716,7 +3715,6 @@ GroupHeatmap <- function(srt, features = NULL, group.by = NULL, split.by = NULL,
37163715

37173716
# data used to plot heatmap
37183717
mat_list <- list()
3719-
37203718
for (cell_group in group.by) {
37213719
mat_tmp <- mat_raw_list[[cell_group]]
37223720
if (is.null(grouping.var)) {

man/RunDynamicEnrichment.Rd

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

man/RunDynamicFeatures.Rd

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)