pertpy 0.9.3__tar.gz → 0.9.4__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (176) hide show
  1. {pertpy-0.9.3 → pertpy-0.9.4}/.github/release-drafter.yml +2 -2
  2. {pertpy-0.9.3 → pertpy-0.9.4}/.github/workflows/test.yml +7 -7
  3. {pertpy-0.9.3 → pertpy-0.9.4}/PKG-INFO +2 -1
  4. {pertpy-0.9.3 → pertpy-0.9.4}/docs/installation.md +2 -2
  5. {pertpy-0.9.3 → pertpy-0.9.4}/docs/usage/usage.md +1 -1
  6. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/__init__.py +1 -1
  7. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/data/_dataloader.py +4 -4
  8. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/data/_datasets.py +2 -2
  9. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/__init__.py +12 -15
  10. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_cinemaot.py +1 -1
  11. {pertpy-0.9.3 → pertpy-0.9.4}/pyproject.toml +3 -2
  12. {pertpy-0.9.3 → pertpy-0.9.4}/.editorconfig +0 -0
  13. {pertpy-0.9.3 → pertpy-0.9.4}/.gitattributes +0 -0
  14. {pertpy-0.9.3 → pertpy-0.9.4}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  15. {pertpy-0.9.3 → pertpy-0.9.4}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  16. {pertpy-0.9.3 → pertpy-0.9.4}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  17. {pertpy-0.9.3 → pertpy-0.9.4}/.github/labels.yml +0 -0
  18. {pertpy-0.9.3 → pertpy-0.9.4}/.github/pull_request_template.md +0 -0
  19. {pertpy-0.9.3 → pertpy-0.9.4}/.github/workflows/build.yml +0 -0
  20. {pertpy-0.9.3 → pertpy-0.9.4}/.github/workflows/labeler.yml +0 -0
  21. {pertpy-0.9.3 → pertpy-0.9.4}/.github/workflows/release.yml +0 -0
  22. {pertpy-0.9.3 → pertpy-0.9.4}/.github/workflows/release_drafter.yml +0 -0
  23. {pertpy-0.9.3 → pertpy-0.9.4}/.gitignore +0 -0
  24. {pertpy-0.9.3 → pertpy-0.9.4}/.gitmodules +0 -0
  25. {pertpy-0.9.3 → pertpy-0.9.4}/.pre-commit-config.yaml +0 -0
  26. {pertpy-0.9.3 → pertpy-0.9.4}/.readthedocs.yml +0 -0
  27. {pertpy-0.9.3 → pertpy-0.9.4}/CODE_OF_CONDUCT.md +0 -0
  28. {pertpy-0.9.3 → pertpy-0.9.4}/LICENSE +0 -0
  29. {pertpy-0.9.3 → pertpy-0.9.4}/README.md +0 -0
  30. {pertpy-0.9.3 → pertpy-0.9.4}/codecov.yml +0 -0
  31. {pertpy-0.9.3 → pertpy-0.9.4}/docs/Makefile +0 -0
  32. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_ext/edit_on_github.py +0 -0
  33. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_ext/typed_returns.py +0 -0
  34. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/SCVI_LICENSE +0 -0
  35. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/css/overwrite.css +0 -0
  36. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/css/sphinx_gallery.css +0 -0
  37. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/augur_dp_scatter.png +0 -0
  38. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/augur_important_features.png +0 -0
  39. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/augur_lollipop.png +0 -0
  40. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/augur_scatterplot.png +0 -0
  41. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/dialogue_pairplot.png +0 -0
  42. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/dialogue_violin.png +0 -0
  43. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/enrichment_dotplot.png +0 -0
  44. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/enrichment_gsea.png +0 -0
  45. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/milo_da_beeswarm.png +0 -0
  46. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/milo_nhood.png +0 -0
  47. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/milo_nhood_graph.png +0 -0
  48. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/mixscape_barplot.png +0 -0
  49. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/mixscape_heatmap.png +0 -0
  50. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/mixscape_lda.png +0 -0
  51. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/mixscape_perturbscore.png +0 -0
  52. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/mixscape_violin.png +0 -0
  53. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/sccoda_boxplots.png +0 -0
  54. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/sccoda_effects_barplot.png +0 -0
  55. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/sccoda_rel_abundance_dispersion_plot.png +0 -0
  56. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/sccoda_stacked_barplot.png +0 -0
  57. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/scgen_reg_mean.png +0 -0
  58. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/tasccoda_draw_effects.png +0 -0
  59. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/tasccoda_draw_tree.png +0 -0
  60. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/docstring_previews/tasccoda_effects_umap.png +0 -0
  61. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/icons/code-24px.svg +0 -0
  62. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/icons/computer-24px.svg +0 -0
  63. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/icons/library_books-24px.svg +0 -0
  64. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/icons/play_circle_outline-24px.svg +0 -0
  65. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/placeholder.png +0 -0
  66. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/augur.png +0 -0
  67. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/cinemaot.png +0 -0
  68. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/dge.png +0 -0
  69. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/dialogue.png +0 -0
  70. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/distances.png +0 -0
  71. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/distances_tests.png +0 -0
  72. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/enrichment.png +0 -0
  73. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/guide_rna_assignment.png +0 -0
  74. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/metadata.png +0 -0
  75. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/milo.png +0 -0
  76. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/mixscape.png +0 -0
  77. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/ontology.png +0 -0
  78. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/perturbation_space.png +0 -0
  79. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/placeholder.png +0 -0
  80. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/sccoda.png +0 -0
  81. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/sccoda_extended.png +0 -0
  82. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/scgen_perturbation_prediction.png +0 -0
  83. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_static/tutorials/tasccoda.png +0 -0
  84. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_templates/autosummary/class.rst +0 -0
  85. {pertpy-0.9.3 → pertpy-0.9.4}/docs/_templates/class_no_inherited.rst +0 -0
  86. {pertpy-0.9.3 → pertpy-0.9.4}/docs/code_of_conduct.md +0 -0
  87. {pertpy-0.9.3 → pertpy-0.9.4}/docs/conf.py +0 -0
  88. {pertpy-0.9.3 → pertpy-0.9.4}/docs/contributing.md +0 -0
  89. {pertpy-0.9.3 → pertpy-0.9.4}/docs/index.md +0 -0
  90. {pertpy-0.9.3 → pertpy-0.9.4}/docs/make.bat +0 -0
  91. {pertpy-0.9.3 → pertpy-0.9.4}/docs/references.bib +0 -0
  92. {pertpy-0.9.3 → pertpy-0.9.4}/docs/references.md +0 -0
  93. {pertpy-0.9.3 → pertpy-0.9.4}/docs/tutorials/index.md +0 -0
  94. {pertpy-0.9.3 → pertpy-0.9.4}/docs/utils.py +0 -0
  95. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/data/__init__.py +0 -0
  96. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/metadata/__init__.py +0 -0
  97. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/metadata/_cell_line.py +0 -0
  98. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/metadata/_compound.py +0 -0
  99. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/metadata/_drug.py +0 -0
  100. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/metadata/_look_up.py +0 -0
  101. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/metadata/_metadata.py +0 -0
  102. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/metadata/_moa.py +0 -0
  103. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/plot/__init__.py +0 -0
  104. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/preprocessing/__init__.py +0 -0
  105. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/preprocessing/_guide_rna.py +0 -0
  106. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/py.typed +0 -0
  107. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_augur.py +0 -0
  108. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_coda/__init__.py +0 -0
  109. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_coda/_base_coda.py +0 -0
  110. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_coda/_sccoda.py +0 -0
  111. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_coda/_tasccoda.py +0 -0
  112. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_dialogue.py +0 -0
  113. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_differential_gene_expression/__init__.py +0 -0
  114. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_differential_gene_expression/_base.py +0 -0
  115. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_differential_gene_expression/_checks.py +0 -0
  116. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_differential_gene_expression/_dge_comparison.py +0 -0
  117. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_differential_gene_expression/_edger.py +0 -0
  118. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_differential_gene_expression/_formulaic.py +0 -0
  119. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_differential_gene_expression/_pydeseq2.py +0 -0
  120. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_differential_gene_expression/_simple_tests.py +0 -0
  121. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_differential_gene_expression/_statsmodels.py +0 -0
  122. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_distances/__init__.py +0 -0
  123. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_distances/_distance_tests.py +0 -0
  124. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_distances/_distances.py +0 -0
  125. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_enrichment.py +0 -0
  126. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_kernel_pca.py +0 -0
  127. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_milo.py +0 -0
  128. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_mixscape.py +0 -0
  129. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_perturbation_space/__init__.py +0 -0
  130. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_perturbation_space/_clustering.py +0 -0
  131. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_perturbation_space/_comparison.py +0 -0
  132. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_perturbation_space/_discriminator_classifiers.py +0 -0
  133. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_perturbation_space/_metrics.py +0 -0
  134. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_perturbation_space/_perturbation_space.py +0 -0
  135. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_perturbation_space/_simple.py +0 -0
  136. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_scgen/__init__.py +0 -0
  137. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_scgen/_base_components.py +0 -0
  138. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_scgen/_scgen.py +0 -0
  139. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_scgen/_scgenvae.py +0 -0
  140. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/_scgen/_utils.py +0 -0
  141. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/decoupler_LICENSE +0 -0
  142. {pertpy-0.9.3 → pertpy-0.9.4}/pertpy/tools/transferlearning_MMD_LICENSE +0 -0
  143. {pertpy-0.9.3 → pertpy-0.9.4}/tests/conftest.py +0 -0
  144. {pertpy-0.9.3 → pertpy-0.9.4}/tests/metadata/test_cell_line.py +0 -0
  145. {pertpy-0.9.3 → pertpy-0.9.4}/tests/metadata/test_compound.py +0 -0
  146. {pertpy-0.9.3 → pertpy-0.9.4}/tests/metadata/test_drug.py +0 -0
  147. {pertpy-0.9.3 → pertpy-0.9.4}/tests/metadata/test_moa.py +0 -0
  148. {pertpy-0.9.3 → pertpy-0.9.4}/tests/preprocessing/test_grna_assignment.py +0 -0
  149. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_coda/test_sccoda.py +0 -0
  150. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_coda/test_tasccoda.py +0 -0
  151. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_differential_gene_expression/__init__.py +0 -0
  152. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_differential_gene_expression/conftest.py +0 -0
  153. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_differential_gene_expression/test_base.py +0 -0
  154. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_differential_gene_expression/test_compare_groups.py +0 -0
  155. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_differential_gene_expression/test_dge.py +0 -0
  156. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_differential_gene_expression/test_edger.py +0 -0
  157. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_differential_gene_expression/test_formulaic.py +0 -0
  158. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_differential_gene_expression/test_input_checks.py +0 -0
  159. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_differential_gene_expression/test_pydeseq2.py +0 -0
  160. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_differential_gene_expression/test_simple_tests.py +0 -0
  161. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_differential_gene_expression/test_statsmodels.py +0 -0
  162. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_distances/test_distance_tests.py +0 -0
  163. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_distances/test_distances.py +0 -0
  164. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_perturbation_space/test_comparison.py +0 -0
  165. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_perturbation_space/test_discriminator_classifiers.py +0 -0
  166. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_perturbation_space/test_simple_cluster_space.py +0 -0
  167. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/_perturbation_space/test_simple_perturbation_space.py +0 -0
  168. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/haber_data.csv +0 -0
  169. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/r_result.csv +0 -0
  170. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/test_augur.py +0 -0
  171. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/test_cinemaot.py +0 -0
  172. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/test_dialogue.py +0 -0
  173. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/test_enrichment.py +0 -0
  174. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/test_milo.py +0 -0
  175. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/test_mixscape.py +0 -0
  176. {pertpy-0.9.3 → pertpy-0.9.4}/tests/tools/test_scgen.py +0 -0
@@ -1,5 +1,5 @@
1
- name-template: "0.9.3 🌈"
2
- tag-template: 0.9.3
1
+ name-template: "0.9.4 🌈"
2
+ tag-template: 0.9.4
3
3
  exclude-labels:
4
4
  - "skip-changelog"
5
5
 
@@ -27,13 +27,13 @@ jobs:
27
27
  - os: ubuntu-latest
28
28
  python: "3.12"
29
29
  run_mode: "slow"
30
- - os: ubuntu-latest
31
- python: "3.12"
32
- run_mode: "fast"
33
- - os: ubuntu-latest
34
- python: "3.12"
35
- run_mode: slow
36
- pip-flags: "--pre"
30
+ # - os: ubuntu-latest
31
+ # python: "3.12"
32
+ # run_mode: "fast"
33
+ # - os: ubuntu-latest
34
+ # python: "3.12"
35
+ # run_mode: slow
36
+ # pip-flags: "--pre"
37
37
 
38
38
  env:
39
39
  OS: ${{ matrix.os }}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pertpy
3
- Version: 0.9.3
3
+ Version: 0.9.4
4
4
  Summary: Perturbation Analysis in the scverse ecosystem.
5
5
  Project-URL: Documentation, https://pertpy.readthedocs.io
6
6
  Project-URL: Source, https://github.com/scverse/pertpy
@@ -46,6 +46,7 @@ Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
46
46
  Classifier: Topic :: Scientific/Engineering :: Visualization
47
47
  Requires-Python: >=3.10
48
48
  Requires-Dist: adjusttext
49
+ Requires-Dist: anndata<0.10.9
49
50
  Requires-Dist: blitzgsea
50
51
  Requires-Dist: decoupler
51
52
  Requires-Dist: lamin-utils
@@ -78,10 +78,10 @@ Follow these steps to install pertpy on an Apple Silicon machine (tested on a Ma
78
78
  brew install --cask mambaforge
79
79
  ```
80
80
 
81
- 3. Create a new environment using mamba (here with python 3.10) and activate it
81
+ 3. Create a new environment using mamba and activate it
82
82
 
83
83
  ```console
84
- mamba create -n pertpy-env python=3.11
84
+ mamba create -n pertpy-env
85
85
  mamba activate pertpy-env
86
86
  ```
87
87
 
@@ -450,7 +450,7 @@ See [scGen predicts single-cell perturbation responses](https://www.nature.com/a
450
450
  .. autosummary::
451
451
  :toctree: tools
452
452
 
453
- tools.SCGEN
453
+ tools.Scgen
454
454
  ```
455
455
 
456
456
  Example implementation:
@@ -2,7 +2,7 @@
2
2
 
3
3
  __author__ = "Lukas Heumos"
4
4
  __email__ = "lukas.heumos@posteo.net"
5
- __version__ = "0.9.3"
5
+ __version__ = "0.9.4"
6
6
 
7
7
  import warnings
8
8
 
@@ -23,10 +23,10 @@ def _download( # pragma: no cover
23
23
  Args:
24
24
  url: URL to download
25
25
  output_file_name: Name of the downloaded file
26
- output_path: Path to download/extract the files to (default: OS tmpdir)
27
- block_size: Block size for downloads in bytes (default: 1024)
28
- overwrite: Whether to overwrite existing files (default: False)
29
- is_zip: Whether the downloaded file needs to be unzipped (default: False)
26
+ output_path: Path to download/extract the files to.
27
+ block_size: Block size for downloads in bytes.
28
+ overwrite: Whether to overwrite existing files.
29
+ is_zip: Whether the downloaded file needs to be unzipped.
30
30
  """
31
31
  if output_file_name is None:
32
32
  letters = ascii_lowercase
@@ -1100,7 +1100,7 @@ def shifrut_2018() -> AnnData: # pragma: no cover
1100
1100
  output_file_path = settings.datasetdir / output_file_name
1101
1101
  if not Path(output_file_path).exists():
1102
1102
  _download(
1103
- url="https://zenodo.org/record/10044268/files/ShifrutMarson2018.h5ad?download=1",
1103
+ url="https://zenodo.org/record/13350497/files/ShifrutMarson2018.h5ad?download=1",
1104
1104
  output_file_name=output_file_name,
1105
1105
  output_path=settings.datasetdir,
1106
1106
  is_zip=False,
@@ -1160,7 +1160,7 @@ def srivatsan_2020_sciplex3() -> AnnData: # pragma: no cover
1160
1160
  output_file_path = settings.datasetdir / output_file_name
1161
1161
  if not Path(output_file_path).exists():
1162
1162
  _download(
1163
- url="https://zenodo.org/records/10044268/files/SrivatsanTrapnell2020_sciplex3.h5ad?download=1",
1163
+ url="https://zenodo.org/records/13350497/files/SrivatsanTrapnell2020_sciplex3.h5ad?download=1",
1164
1164
  output_file_name=output_file_name,
1165
1165
  output_path=settings.datasetdir,
1166
1166
  is_zip=False,
@@ -1,25 +1,22 @@
1
- from functools import wraps
2
1
  from importlib import import_module
3
2
 
4
3
 
5
4
  def lazy_import(module_path, class_name, extras):
6
- def _import():
7
- try:
8
- for extra in extras:
9
- import_module(extra)
10
- except ImportError as e:
11
- raise ImportError(
12
- f"Extra dependencies required: {', '.join(extras)}. "
13
- f"Please install with: pip install {' '.join(extras)}"
14
- ) from e
5
+ try:
6
+ for extra in extras:
7
+ import_module(extra)
15
8
  module = import_module(module_path)
16
9
  return getattr(module, class_name)
10
+ except ImportError:
17
11
 
18
- @wraps(_import)
19
- def wrapper(*args, **kwargs):
20
- return _import()(*args, **kwargs)
12
+ class Placeholder:
13
+ def __init__(self, *args, **kwargs):
14
+ raise ImportError(
15
+ f"Extra dependencies required: {', '.join(extras)}. "
16
+ f"Please install with: pip install {' '.join(extras)}"
17
+ )
21
18
 
22
- return wrapper
19
+ return Placeholder
23
20
 
24
21
 
25
22
  from pertpy.tools._augur import Augur
@@ -49,7 +46,7 @@ Sccoda = lazy_import("pertpy.tools._coda._sccoda", "Sccoda", CODA_EXTRAS)
49
46
  Tasccoda = lazy_import("pertpy.tools._coda._tasccoda", "Tasccoda", CODA_EXTRAS)
50
47
 
51
48
  DE_EXTRAS = ["formulaic", "pydeseq2"]
52
- EdgeR = lazy_import("pertpy.tools._differential_gene_expression", "EdgeR", DE_EXTRAS + ["edger"])
49
+ EdgeR = lazy_import("pertpy.tools._differential_gene_expression", "EdgeR", DE_EXTRAS) # edgeR will be imported via rpy2
53
50
  PyDESeq2 = lazy_import("pertpy.tools._differential_gene_expression", "PyDESeq2", DE_EXTRAS)
54
51
  Statsmodels = lazy_import("pertpy.tools._differential_gene_expression", "Statsmodels", DE_EXTRAS + ["statsmodels"])
55
52
  TTest = lazy_import("pertpy.tools._differential_gene_expression", "TTest", DE_EXTRAS)
@@ -190,7 +190,7 @@ class Cinemaot:
190
190
  TE.obsm["X_embedding"] = embedding
191
191
 
192
192
  if return_matching:
193
- TE.obsm["ot"] = ot_sink.matrix.T
193
+ TE.obsm["ot"] = np.asarray(ot_sink.matrix.T)
194
194
  return TE
195
195
  else:
196
196
  return TE
@@ -4,7 +4,7 @@ requires = ["hatchling"]
4
4
 
5
5
  [project]
6
6
  name = "pertpy"
7
- version = "0.9.3"
7
+ version = "0.9.4"
8
8
  description = "Perturbation Analysis in the scverse ecosystem."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -64,7 +64,8 @@ dependencies = [
64
64
  "pubchempy",
65
65
  "pyarrow",
66
66
  "blitzgsea",
67
- "lamin_utils"
67
+ "lamin_utils",
68
+ "anndata <0.10.9" # pydeseq2 bug
68
69
  ]
69
70
 
70
71
  [project.optional-dependencies]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes