satijalab / seurat-wrappers

Community-provided extensions to Seurat
GNU General Public License v3.0
303 stars 131 forks source link

Error in slot(object = `*tmp*`, name = "preprocess_aux") #119

Open kunUCSD opened 2 years ago

kunUCSD commented 2 years ago

Hello, I just tried the tutorial and met the below issue. Any suggestions? Thanks! K

con <- url("https://seurat.nygenome.org/monocle3/hcabm40k_integrated.Rds") integrated <- readRDS(file = con) close(con = con) DimPlot(object = integrated, group.by = c("orig.ident", "ident")) cds <- as.cell_data_set(integrated)

Error in slot(object = *tmp*, name = "preprocess_aux") : no slot of name "preprocess_aux" for this object of class "cell_data_set"

sessionInfo()

R version 4.1.1 (2021-08-10) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10 x64 (build 19041)

Matrix products: default

Random number generation: RNG: Mersenne-Twister Normal: Inversion Sample: Rounding

locale: [1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
system code page: 936

attached base packages: [1] stats4 parallel stats graphics grDevices utils datasets methods
[9] base

other attached packages: [1] hcabm40k.SeuratData_3.0.0 magrittr_2.0.1 SeuratData_0.2.1
[4] patchwork_1.1.1 ggplot2_3.3.5 Signac_1.4.0
[7] monocle3_1.2.1 SingleCellExperiment_1.14.1 SummarizedExperiment_1.22.0 [10] GenomicRanges_1.44.0 GenomeInfoDb_1.28.4 IRanges_2.26.0
[13] S4Vectors_0.30.2 MatrixGenerics_1.4.3 matrixStats_0.61.0
[16] Biobase_2.52.0 BiocGenerics_0.38.0 Matrix_1.3-4
[19] dplyr_1.0.7 SeuratObject_4.0.3 Seurat_4.0.5
[22] SeuratWrappers_0.3.0

loaded via a namespace (and not attached): [1] utf8_1.2.2 reticulate_1.22 R.utils_2.11.0
[4] tidyselect_1.1.1 htmlwidgets_1.5.4 docopt_0.7.1
[7] grid_4.1.1 BiocParallel_1.26.2 Rtsne_0.15
[10] devtools_2.4.2 munsell_0.5.0 codetools_0.2-18
[13] ica_1.0-2 future_1.23.0 miniUI_0.1.1.1
[16] withr_2.4.2 colorspace_2.0-2 knitr_1.36
[19] rstudioapi_0.13 ROCR_1.0-11 tensor_1.5
[22] gitcreds_0.1.1 listenv_0.8.0 labeling_0.4.2
[25] slam_0.1-48 GenomeInfoDbData_1.2.6 polyclip_1.10-0
[28] farver_2.1.0 rprojroot_2.0.2 parallelly_1.28.1
[31] vctrs_0.3.8 generics_0.1.1 xfun_0.26
[34] lsa_0.73.2 ggseqlogo_0.1 R6_2.5.1
[37] rsvd_1.0.5 bitops_1.0-7 spatstat.utils_2.2-0
[40] cachem_1.0.6 DelayedArray_0.18.0 assertthat_0.2.1
[43] promises_1.2.0.1 scales_1.1.1 gtable_0.3.0
[46] globals_0.14.0 processx_3.5.2 goftest_1.2-3
[49] rlang_0.4.12 RcppRoll_0.3.0 splines_4.1.1
[52] lazyeval_0.2.2 spatstat.geom_2.3-0 BiocManager_1.30.16
[55] reshape2_1.4.4 abind_1.4-5 httpuv_1.6.3
[58] tools_4.1.1 usethis_2.1.3 ellipsis_0.3.2
[61] spatstat.core_2.3-1 RColorBrewer_1.1-2 sessioninfo_1.1.1
[64] ggridges_0.5.3 Rcpp_1.0.7 plyr_1.8.6
[67] zlibbioc_1.38.0 purrr_0.3.4 RCurl_1.98-1.5
[70] ps_1.6.0 prettyunits_1.1.1 rpart_4.1-15
[73] openssl_1.4.5 deldir_1.0-6 pbapply_1.5-0
[76] viridis_0.6.2 cowplot_1.1.1 zoo_1.8-9
[79] ggrepel_0.9.1 cluster_2.1.2 fs_1.5.0
[82] RSpectra_0.16-0 data.table_1.14.2 scattermore_0.7
[85] lmtest_0.9-39 gh_1.3.0 RANN_2.6.1
[88] SnowballC_0.7.0 fitdistrplus_1.1-6 pkgload_1.2.3
[91] mime_0.12 xtable_1.8-4 sparsesvd_0.2
[94] gridExtra_2.3 testthat_3.1.0 compiler_4.1.1
[97] tibble_3.1.6 credentials_1.3.1 KernSmooth_2.23-20
[100] crayon_1.4.2 R.oo_1.24.0 htmltools_0.5.2
[103] mgcv_1.8-36 later_1.3.0 tidyr_1.1.4
[106] DBI_1.1.1 tweenr_1.0.2 rappdirs_0.3.3
[109] MASS_7.3-54 cli_3.1.0 R.methodsS3_1.8.1
[112] igraph_1.2.7 pkgconfig_2.0.3 plotly_4.10.0
[115] spatstat.sparse_2.0-0 XVector_0.32.0 stringr_1.4.0
[118] callr_3.7.0 digest_0.6.28 sctransform_0.3.2
[121] RcppAnnoy_0.0.19 spatstat.data_2.1-0 Biostrings_2.60.2
[124] leiden_0.3.9 fastmatch_1.1-3 uwot_0.1.10
[127] curl_4.3.2 shiny_1.7.1 Rsamtools_2.8.0
[130] lifecycle_1.0.1 nlme_3.1-152 jsonlite_1.7.2
[133] desc_1.4.0 viridisLite_0.4.0 askpass_1.1
[136] fansi_0.5.0 pillar_1.6.4 lattice_0.20-44
[139] fastmap_1.1.0 httr_1.4.2 pkgbuild_1.2.0
[142] survival_3.2-11 glue_1.5.0 remotes_2.4.1
[145] qlcMatrix_0.9.7 gert_1.4.3 png_0.1-7
[148] ggforce_0.3.3 stringi_1.7.5 memoise_2.0.0
[151] irlba_2.3.3 future.apply_1.8.1

miaomiaotao9 commented 2 years ago

Hi, I have encountered the same problem when I tried to construct the basic cds object from Seurat object. Any luck finding the solution?

Best,

Miao

reza2026131 commented 2 years ago

Hi, I have the same issue after "as.cell_data_set". Please share if you find the solution. Error in slot(object = *tmp*, name = "preprocess_aux") : no slot of name "preprocess_aux" for this object of class "cell_data_set"

tfrayner commented 2 years ago

There's a pull request which addresses this issue for me, here: https://github.com/satijalab/seurat-wrappers/pull/120

reza2026131 commented 2 years ago

Sorry, I am new to R and have no idea how to use that workflow to resolve the issue. Any assistance will be greatly appreciated.

tfrayner commented 2 years ago

Unfortunately I'm a first-time contributor to this project, and as such I don't have the ability to merge a pull request without approval. If you don't want to wait for one of the maintainers to approve it, you could conceivably use the version in my forked version of the repository:

remotes::install_github('tfrayner/seurat-wrappers', ref='monocle3-conversion-bugfix')

This would only be a temporary workaround for you, as I am not able to provide support for the package more generally. Let's hope that the pull request can processed soon.

s7hegde commented 2 years ago

Thanks @tfrayner, I faced a similar issue and your workaround fixed it ! @mojaveazure could help with incorporating the pull?

minjin-jeong commented 2 years ago

remotes::install_github('tfrayner/seurat-wrappers', ref='monocle3-conversion-bugfix') It doesn't help in my case. Is there any other solution?

GreyRockIQ commented 2 years ago

I have the same problem remotes::install_github('tfrayner/seurat-wrappers', ref='monocle3-conversion-bugfix') couldn't fix it me Any other solutions?

Thanks GreyRock

sluff-zz commented 2 years ago

The fix worked for me, thanks SO much! Maybe what I did differently from the others was quitting R after installing the patched version and restarted R with my typical --vanilla flag.

ppw0318 commented 2 years ago

Facing the same problem. Any one have solutions? really appreciated.

Bastien-mva commented 2 years ago

Facing the same issue, the workaround did not fixed it.

Thanks

Ruismart commented 2 years ago

Facing the same issue,the 'monocle3-conversion-bugfix' fix it then after re-installation and re-start R

paulitikka commented 2 years ago

Hi,

If you are still have problems with this please just change the word 'preprocess_aux' to 'reduce_dim_aux' in your standard monocle3 coding pipeline as suggested in the previous links: https://github.com/satijalab/seurat-wrappers/pull/120 & https://github.com/cole-trapnell-lab/monocle3/commit/9d89e11b2e941c03c3e97fb88661c8650714ecae

Accordingly, it seemed that the source code of monocle3 regarding these words had been changed. However, the update of the monocle3 does not appear have the older information for some reason at the moment. I started to to check alternative solutions when the previous conversion-bugfix and even normal monocle3 installation did not work as workarounds for me also in my (older in relation to the update) pipeline. So, basically this is just a documentation/manual lagging behind issue with hopefully quick & simultaneous fix from the makers/users of the documentation of the package at the same time as its update rather than the package itself. Though I would hope that the older syntax would work as well :)

Yours, Pauli

paulitikka commented 2 years ago

Fyi, my standard monocle3 coding pipeline looks something like this (and has been elaborated elsewhere):

gene_annotation <- as.data.frame(rownames(dput@reductions[["pca"]]@feature.loadings), row.names = rownames(dput@reductions[["pca"]]@feature.loadings)) colnames(gene_annotation) <- "gene_short_name" # part two, cell information: cell_metadata <- as.data.frame(dput@assays[["RNA"]]@ counts@Dimnames[[2]], row.names = dput@assays[["RNA"]]@ counts@Dimnames[[2]]) colnames(cell_metadata) <- "barcode": # part three, counts sparse matrix New_matrix <- dput@assays[["RNA"]]@ counts New_matrix <- New_matrix[rownames(dput@reductions[["pca"]]@feature.loadings), ] expression_matrix <- New_matrix cds_from_edt3=c() ### Construct the basic cds object: cds_from_edt3 <- new_cell_data_set(expression_matrix,cell_metadata = cell_metadata,gene_metadata = gene_annotation) # Construct and assign the made up partition: recreate.partition <- c(rep(1, length(cds_from_edt3@colData@rownames))) names(recreate.partition) <- cds_from_edt3@colData@rownames recreate.partition <- as.factor(recreate.partition) cds_from_edt3@clusters@listData[["UMAP"]][["partitions"]] <- recreate.partition# plot_cell_trajectory(cds,color_by = "1") +scale_color_manual(values = cell_type_color) # https://www.singlecellcourse.org/ Assign the cluster info, the number of clusters effect the trajectory.. list_cluster <- dput@ meta.data[[sprintf("seurat_clusters")]] names(list_cluster) <- dput@assays[["RNA"]]@ data@Dimnames[[2]] cds_from_edt3@clusters@listData[["UMAP"]][["clusters"]] <- list_cluster### Could be a space-holder, but essentially fills out louvain parameters cds_from_edt3@clusters@listData[["UMAP"]][["louvain_res"]] <- "NA"# Assign UMAP coordinate

So this is different, and found here: https://github.com/cole-trapnell-lab/monocle-release/issues/388

cds_from_edt3@int_colData@listData$reducedDims$UMAP = dput@reductions[["umap"]]@cell.embeddings;### Assign feature loading for downstream module analysis cds_from_edt3@reduce_dim_aux$gene_loadings <- dput@reductions[["pca"]]@feature.loadings

So do not use: cds_from_edt3@preprocess_aux$gene_loadings

cds_from_edt3 <- learn_graph(cds_from_edt3, use_partition = TRUE) #takes a significant period of time for larger samples cds_from_edt3 <- order_cells(cds_from_edt3)# plot trajectories colored by pseudotime plot_cells(cds= cds_from_edt3,color_cells_by = "pseudotime",show_trajectory_graph = TRUE)

nghiemdangvo commented 2 years ago

Faced the same issue converting a seurat.obj into cds, where the pull request from @tfrayner fixed the problem for me. After installing the bug-fix, restarted computer & R-studio.

wfma commented 1 year ago

Hi,

If you are still have problems with this please just change the word 'preprocess_aux' to 'reduce_dim_aux' in your standard monocle3 coding pipeline as suggested in the previous links: #120 & cole-trapnell-lab/monocle3@9d89e11

Accordingly, it seemed that the source code of monocle3 regarding these words had been changed. However, the update of the monocle3 does not appear have the older information for some reason at the moment. I started to to check alternative solutions when the previous conversion-bugfix and even normal monocle3 installation did not work as workarounds for me also in my (older in relation to the update) pipeline. So, basically this is just a documentation/manual lagging behind issue with hopefully quick & simultaneous fix from the makers/users of the documentation of the package at the same time as its update rather than the package itself. Though I would hope that the older syntax would work as well :)

Yours, Pauli

this worked for me!

pauldeboissier commented 9 months ago

Hello, I'm facing the same problem and tried all your solutions from here and other issue threads but nothing worked. I'm using Seurat 4.3.0.1, so I'm forced to not install the last version of SeuratWrappers.

Do you have an other solution of a specific branch I could use where the preprocess_aux issue is fixed please ?

rsggsr commented 8 months ago

Hi, I am also experiencing the same error but just recently. But more interestingly I found my monocle3/SeuratWrappers code could work with my previous Seurat Objects but not any recent created objects. I found some good manual transfer method online created by Abbie Ireland (https://rpubs.com/abbieireland11/monocle3_SNL_CCSPtumor) and just simply change "@preprocess_aux" to "@reduce_dim_aux" as suggested above, I could successfully transfer the UMAP beddings and clusters to a new cell data set suitable for monocle3 (I tried as.CellDataSet in Seurat but found out it's only for monocle).

Also would be happy if this problem could be fixed (since previously this magic function "as.cell_data_set" just need one command now I need several lines to do it...). Thanks!