Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MapQuery() with uwot version 0.1.14 doesn't work #6345

Closed
liviuspenter opened this issue Aug 26, 2022 · 7 comments
Closed

MapQuery() with uwot version 0.1.14 doesn't work #6345

liviuspenter opened this issue Aug 26, 2022 · 7 comments
Labels
bug Something isn't working

Comments

@liviuspenter
Copy link

liviuspenter commented Aug 26, 2022

Hi there,

I just updated my R environment and tried to run MapQuery() with Seurat 4.1.1,
which resulted in the following error (see below).

After poking around a bit I figured this could be due to the newer uwot package version 0.1.14.
Indeed, after downgrading to uwot version 0.1.11, MapQuery() runs without problems.

Could you check whether there is some incompatibility between Seurat 4.1.1 and
the latest version 0.1.14 of uwot (which was released 3 days ago)?

Thank you,

livius

AML1007 <- MapQuery(anchorset = anchors, so, reference = bm,
refdata = list(celltype = "celltype.l2", predicted_ADT = "ADT"),
reference.reduction = "spca", reduction.model = "wnn.umap")
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Predicting cell labels
Warning: Feature names cannot have underscores (''), replacing with dashes ('-')
Transfering 25 features onto reference data
Warning: Keys should be one or more alphanumeric characters followed by an underscore, setting key from predicted_ADT
to predictedADT_
| | 0 % ~calculating
Integrating dataset 2 with reference dataset
Finding integration vectors
Integrating data
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=00s
Computing nearest neighbors
Running UMAP projection
Error in if (num_precomputed_nns == 0) { : argument is of length zero

This is my session info after the downgrade of uwot:

sessionInfo()
R version 4.2.1 (2022-06-23)
Platform: x86_64-apple-darwin21.5.0 (64-bit)
Running under: macOS Monterey 12.5.1

Matrix products: default
LAPACK: /usr/local/Cellar/r/4.2.1_2/lib/R/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

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

other attached packages:
[1] sp_1.5-0 SeuratObject_4.1.0 Seurat_4.1.1

loaded via a namespace (and not attached):
[1] Rtsne_0.16 colorspace_2.0-3 deldir_1.0-6 ellipsis_0.3.2 ggridges_0.5.3 XVector_0.36.0 rstudioapi_0.14
[8] spatstat.data_2.2-0 leiden_0.4.2 listenv_0.8.0 ggrepel_0.9.1 fansi_1.0.3 codetools_0.2-18 splines_4.2.1
[15] polyclip_1.10-0 jsonlite_1.8.0 ica_1.0-3 cluster_2.1.4 png_0.1-7 rgeos_0.5-9 uwot_0.1.11
[22] shiny_1.7.2 sctransform_0.3.4 spatstat.sparse_2.1-1 compiler_4.2.1 httr_1.4.4 assertthat_0.2.1 Matrix_1.4-1
[29] fastmap_1.1.0 lazyeval_0.2.2 cli_3.3.0 later_1.3.0 htmltools_0.5.3 tools_4.2.1 igraph_1.3.4
[36] gtable_0.3.0 glue_1.6.2 RANN_2.6.1 reshape2_1.4.4 dplyr_1.0.9 Rcpp_1.0.9 scattermore_0.8
[43] Biobase_2.56.0 vctrs_0.4.1 nlme_3.1-159 progressr_0.10.1 lmtest_0.9-40 spatstat.random_2.2-0 stringr_1.4.1
[50] globals_0.16.0 mime_0.12 miniUI_0.1.1.1 lifecycle_1.0.1 irlba_2.3.5 goftest_1.2-3 future_1.27.0
[57] MASS_7.3-58.1 zlibbioc_1.42.0 zoo_1.8-10 scales_1.2.1 spatstat.core_2.4-4 promises_1.2.0.1 spatstat.utils_2.3-1
[64] parallel_4.2.1 RColorBrewer_1.1-3 reticulate_1.25 pbapply_1.5-0 gridExtra_2.3 ggplot2_3.3.6 rpart_4.1.16
[71] stringi_1.7.6 S4Vectors_0.34.0 BiocGenerics_0.42.0 rlang_1.0.4 pkgconfig_2.0.3 matrixStats_0.62.0 lattice_0.20-45
[78] ROCR_1.0-11 purrr_0.3.4 tensor_1.5 patchwork_1.1.2 htmlwidgets_1.5.4 cowplot_1.1.1 tidyselect_1.1.2
[85] parallelly_1.32.1 RcppAnnoy_0.0.19 plyr_1.8.7 magrittr_2.0.3 R6_2.5.1 IRanges_2.30.0 generics_0.1.3
[92] DBI_1.1.3 pillar_1.8.1 mgcv_1.8-40 fitdistrplus_1.1-8 survival_3.4-0 abind_1.4-5 tibble_3.1.8
[99] future.apply_1.9.0 crayon_1.5.1 KernSmooth_2.23-20 utf8_1.2.2 spatstat.geom_2.4-0 plotly_4.10.0 grid_4.2.1
[106] data.table_1.14.2 digest_0.6.29 xtable_1.8-4 tidyr_1.2.0 httpuv_1.6.5 stats4_4.2.1 munsell_0.5.0
[113] viridisLite_0.4.1

@liviuspenter liviuspenter added the bug Something isn't working label Aug 26, 2022
@AustinHartman
Copy link
Contributor

AustinHartman commented Aug 26, 2022

Hi, thanks for pointing out this issue. MapQuery uses the UMAP models from uwot to project query cells into the reference UMAP space and the latest uwot versions add a few additional variables to these models. My guess here is that the bm object contains a UMAP model generated using a pre-0.1.13 uwot version. There will be a new Seurat version very soon which will fix this issue, but in the meantime you should be able to use this as a workaround before running MapQuery: Misc(bm[["wnn.umap"]], slot="model")$num_precomputed_nns <- 1

@ViHammer
Copy link

ViHammer commented Sep 2, 2022

Hi, thanks for pointing out this issue. MapQuery uses the UMAP models from uwot to project query cells into the reference UMAP space and the latest uwot versions add a few additional variables to these models. My guess here is that the bm object contains a UMAP model generated using a pre-0.1.13 uwot version. There will be a new Seurat version very soon which will fix this issue, but in the meantime you should be able to use this as a workaround before running MapQuery: Misc(bm[["wnn.umap"]], slot="model")$num_precomputed_nns <- 1

This did not work for me, I had to downgrade UWOT to v.0.1.11

@AustinHartman
Copy link
Contributor

Hi @ViHammer (or @shaka87), this is useful to know. Any chance you could provide an example where downgrading to uwot v0.1.11 seems to be the only solution? I'm having trouble reproducing such a case

@liviuspenter
Copy link
Author

I just sent you an email with the reference I use as dropbox link to download. @AustinHartman

@ViHammer
Copy link

ViHammer commented Sep 5, 2022

The code that failed with uwot 0.1.14:
code.txt

I sadly do not have the sessionInfo anymore, as I modified the environment to downgrade uwot.

@AustinHartman

@yuhanH
Copy link
Collaborator

yuhanH commented Jul 6, 2023

the latest uwot doesn't have this issue. i will close this issue.

@yuhanH yuhanH closed this as completed Jul 6, 2023
@Jasemineonly
Copy link

It did work for me, the "bm" should change to your own reference name

Misc(bm[["wnn.umap"]], slot="model")$num_precomputed_nns <- 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants