pertpy 0.7.0__tar.gz → 0.9.1__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (201) hide show
  1. {pertpy-0.7.0 → pertpy-0.9.1}/.github/release-drafter.yml +2 -2
  2. {pertpy-0.7.0 → pertpy-0.9.1}/.github/workflows/test.yml +28 -7
  3. {pertpy-0.7.0 → pertpy-0.9.1}/.gitmodules +1 -1
  4. {pertpy-0.7.0 → pertpy-0.9.1}/.pre-commit-config.yaml +2 -2
  5. {pertpy-0.7.0 → pertpy-0.9.1}/.readthedocs.yml +1 -0
  6. {pertpy-0.7.0 → pertpy-0.9.1}/PKG-INFO +32 -14
  7. pertpy-0.9.1/README.md +49 -0
  8. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_ext/edit_on_github.py +1 -1
  9. pertpy-0.9.1/docs/_static/tutorials/dge.png +0 -0
  10. pertpy-0.9.1/docs/_static/tutorials/metadata.png +0 -0
  11. {pertpy-0.7.0 → pertpy-0.9.1}/docs/conf.py +16 -8
  12. {pertpy-0.7.0 → pertpy-0.9.1}/docs/contributing.md +2 -2
  13. {pertpy-0.7.0 → pertpy-0.9.1}/docs/index.md +2 -2
  14. {pertpy-0.7.0 → pertpy-0.9.1}/docs/installation.md +31 -13
  15. {pertpy-0.7.0 → pertpy-0.9.1}/docs/tutorials/index.md +3 -1
  16. {pertpy-0.7.0 → pertpy-0.9.1}/docs/usage/usage.md +13 -3
  17. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/__init__.py +2 -1
  18. pertpy-0.9.1/pertpy/data/__init__.py +117 -0
  19. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/data/_dataloader.py +27 -23
  20. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/data/_datasets.py +58 -0
  21. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/metadata/__init__.py +2 -0
  22. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/metadata/_cell_line.py +39 -70
  23. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/metadata/_compound.py +3 -4
  24. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/metadata/_drug.py +2 -6
  25. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/metadata/_look_up.py +38 -51
  26. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/metadata/_metadata.py +7 -10
  27. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/metadata/_moa.py +2 -6
  28. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/preprocessing/__init__.py +2 -0
  29. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/preprocessing/_guide_rna.py +6 -7
  30. pertpy-0.9.1/pertpy/tools/__init__.py +80 -0
  31. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_augur.py +14 -15
  32. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_cinemaot.py +2 -2
  33. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_coda/_base_coda.py +118 -142
  34. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_coda/_sccoda.py +16 -15
  35. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_coda/_tasccoda.py +21 -22
  36. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_dialogue.py +18 -23
  37. pertpy-0.9.1/pertpy/tools/_differential_gene_expression/__init__.py +20 -0
  38. pertpy-0.9.1/pertpy/tools/_differential_gene_expression/_base.py +657 -0
  39. pertpy-0.9.1/pertpy/tools/_differential_gene_expression/_checks.py +41 -0
  40. pertpy-0.9.1/pertpy/tools/_differential_gene_expression/_dge_comparison.py +86 -0
  41. pertpy-0.9.1/pertpy/tools/_differential_gene_expression/_edger.py +125 -0
  42. pertpy-0.9.1/pertpy/tools/_differential_gene_expression/_formulaic.py +189 -0
  43. pertpy-0.9.1/pertpy/tools/_differential_gene_expression/_pydeseq2.py +95 -0
  44. pertpy-0.9.1/pertpy/tools/_differential_gene_expression/_simple_tests.py +162 -0
  45. pertpy-0.9.1/pertpy/tools/_differential_gene_expression/_statsmodels.py +72 -0
  46. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_distances/_distance_tests.py +21 -16
  47. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_distances/_distances.py +406 -70
  48. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_enrichment.py +10 -15
  49. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_kernel_pca.py +1 -1
  50. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_milo.py +77 -54
  51. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_mixscape.py +15 -11
  52. pertpy-0.9.1/pertpy/tools/_perturbation_space/__init__.py +0 -0
  53. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_perturbation_space/_clustering.py +5 -2
  54. pertpy-0.9.1/pertpy/tools/_perturbation_space/_comparison.py +112 -0
  55. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_perturbation_space/_discriminator_classifiers.py +21 -23
  56. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_perturbation_space/_perturbation_space.py +23 -21
  57. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_perturbation_space/_simple.py +3 -3
  58. pertpy-0.9.1/pertpy/tools/_scgen/__init__.py +1 -0
  59. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_scgen/_base_components.py +2 -3
  60. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_scgen/_scgen.py +33 -28
  61. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_scgen/_utils.py +2 -2
  62. {pertpy-0.7.0 → pertpy-0.9.1}/pyproject.toml +17 -10
  63. pertpy-0.9.1/tests/conftest.py +20 -0
  64. pertpy-0.9.1/tests/metadata/test_cell_line.py +82 -0
  65. pertpy-0.9.1/tests/metadata/test_compound.py +44 -0
  66. pertpy-0.9.1/tests/metadata/test_drug.py +36 -0
  67. pertpy-0.9.1/tests/metadata/test_moa.py +50 -0
  68. {pertpy-0.7.0 → pertpy-0.9.1}/tests/preprocessing/test_grna_assignment.py +1 -1
  69. pertpy-0.9.1/tests/tools/_coda/test_sccoda.py +113 -0
  70. pertpy-0.9.1/tests/tools/_coda/test_tasccoda.py +76 -0
  71. pertpy-0.9.1/tests/tools/_differential_gene_expression/__init__.py +0 -0
  72. pertpy-0.9.1/tests/tools/_differential_gene_expression/conftest.py +64 -0
  73. pertpy-0.9.1/tests/tools/_differential_gene_expression/test_base.py +86 -0
  74. pertpy-0.9.1/tests/tools/_differential_gene_expression/test_compare_groups.py +58 -0
  75. pertpy-0.9.1/tests/tools/_differential_gene_expression/test_dge.py +82 -0
  76. pertpy-0.9.1/tests/tools/_differential_gene_expression/test_edger.py +33 -0
  77. pertpy-0.9.1/tests/tools/_differential_gene_expression/test_formulaic.py +208 -0
  78. pertpy-0.9.1/tests/tools/_differential_gene_expression/test_input_checks.py +73 -0
  79. pertpy-0.9.1/tests/tools/_differential_gene_expression/test_pydeseq2.py +33 -0
  80. pertpy-0.9.1/tests/tools/_differential_gene_expression/test_simple_tests.py +113 -0
  81. pertpy-0.9.1/tests/tools/_differential_gene_expression/test_statsmodels.py +30 -0
  82. pertpy-0.9.1/tests/tools/_distances/test_distance_tests.py +56 -0
  83. pertpy-0.9.1/tests/tools/_distances/test_distances.py +212 -0
  84. pertpy-0.9.1/tests/tools/_perturbation_space/test_comparison.py +29 -0
  85. pertpy-0.9.1/tests/tools/test_augur.py +181 -0
  86. pertpy-0.9.1/tests/tools/test_cinemaot.py +83 -0
  87. pertpy-0.9.1/tests/tools/test_dialogue.py +37 -0
  88. {pertpy-0.7.0 → pertpy-0.9.1}/tests/tools/test_enrichment.py +16 -16
  89. pertpy-0.9.1/tests/tools/test_milo.py +283 -0
  90. pertpy-0.9.1/tests/tools/test_mixscape.py +100 -0
  91. {pertpy-0.7.0 → pertpy-0.9.1}/tests/tools/test_scgen.py +4 -4
  92. pertpy-0.7.0/README.md +0 -35
  93. pertpy-0.7.0/pertpy/data/__init__.py +0 -56
  94. pertpy-0.7.0/pertpy/plot/__init__.py +0 -5
  95. pertpy-0.7.0/pertpy/plot/_augur.py +0 -171
  96. pertpy-0.7.0/pertpy/plot/_coda.py +0 -601
  97. pertpy-0.7.0/pertpy/plot/_guide_rna.py +0 -64
  98. pertpy-0.7.0/pertpy/plot/_milopy.py +0 -209
  99. pertpy-0.7.0/pertpy/plot/_mixscape.py +0 -355
  100. pertpy-0.7.0/pertpy/tools/__init__.py +0 -19
  101. pertpy-0.7.0/pertpy/tools/_differential_gene_expression.py +0 -325
  102. pertpy-0.7.0/pertpy/tools/_scgen/__init__.py +0 -1
  103. pertpy-0.7.0/tests/conftest.py +0 -7
  104. pertpy-0.7.0/tests/metadata/test_cell_line.py +0 -77
  105. pertpy-0.7.0/tests/metadata/test_compound.py +0 -43
  106. pertpy-0.7.0/tests/metadata/test_drug.py +0 -34
  107. pertpy-0.7.0/tests/metadata/test_moa.py +0 -49
  108. pertpy-0.7.0/tests/tools/_coda/test_sccoda.py +0 -107
  109. pertpy-0.7.0/tests/tools/_coda/test_tasccoda.py +0 -73
  110. pertpy-0.7.0/tests/tools/_distances/test_distance_tests.py +0 -51
  111. pertpy-0.7.0/tests/tools/_distances/test_distances.py +0 -134
  112. pertpy-0.7.0/tests/tools/test_augur.py +0 -180
  113. pertpy-0.7.0/tests/tools/test_cinemaot.py +0 -83
  114. pertpy-0.7.0/tests/tools/test_differential_gene_expression.py +0 -81
  115. pertpy-0.7.0/tests/tools/test_milo.py +0 -266
  116. pertpy-0.7.0/tests/tools/test_mixscape.py +0 -97
  117. {pertpy-0.7.0 → pertpy-0.9.1}/.editorconfig +0 -0
  118. {pertpy-0.7.0 → pertpy-0.9.1}/.gitattributes +0 -0
  119. {pertpy-0.7.0 → pertpy-0.9.1}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  120. {pertpy-0.7.0 → pertpy-0.9.1}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  121. {pertpy-0.7.0 → pertpy-0.9.1}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  122. {pertpy-0.7.0 → pertpy-0.9.1}/.github/labels.yml +0 -0
  123. {pertpy-0.7.0 → pertpy-0.9.1}/.github/pull_request_template.md +0 -0
  124. {pertpy-0.7.0 → pertpy-0.9.1}/.github/workflows/build.yml +0 -0
  125. {pertpy-0.7.0 → pertpy-0.9.1}/.github/workflows/labeler.yml +0 -0
  126. {pertpy-0.7.0 → pertpy-0.9.1}/.github/workflows/release.yml +0 -0
  127. {pertpy-0.7.0 → pertpy-0.9.1}/.github/workflows/release_drafter.yml +0 -0
  128. {pertpy-0.7.0 → pertpy-0.9.1}/.gitignore +0 -0
  129. {pertpy-0.7.0 → pertpy-0.9.1}/CODE_OF_CONDUCT.md +0 -0
  130. {pertpy-0.7.0 → pertpy-0.9.1}/LICENSE +0 -0
  131. {pertpy-0.7.0 → pertpy-0.9.1}/codecov.yml +0 -0
  132. {pertpy-0.7.0 → pertpy-0.9.1}/docs/Makefile +0 -0
  133. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_ext/typed_returns.py +0 -0
  134. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/SCVI_LICENSE +0 -0
  135. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/css/overwrite.css +0 -0
  136. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/css/sphinx_gallery.css +0 -0
  137. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/augur_dp_scatter.png +0 -0
  138. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/augur_important_features.png +0 -0
  139. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/augur_lollipop.png +0 -0
  140. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/augur_scatterplot.png +0 -0
  141. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/dialogue_pairplot.png +0 -0
  142. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/dialogue_violin.png +0 -0
  143. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/enrichment_dotplot.png +0 -0
  144. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/enrichment_gsea.png +0 -0
  145. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/milo_da_beeswarm.png +0 -0
  146. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/milo_nhood.png +0 -0
  147. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/milo_nhood_graph.png +0 -0
  148. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/mixscape_barplot.png +0 -0
  149. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/mixscape_heatmap.png +0 -0
  150. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/mixscape_lda.png +0 -0
  151. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/mixscape_perturbscore.png +0 -0
  152. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/mixscape_violin.png +0 -0
  153. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/sccoda_boxplots.png +0 -0
  154. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/sccoda_effects_barplot.png +0 -0
  155. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/sccoda_rel_abundance_dispersion_plot.png +0 -0
  156. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/sccoda_stacked_barplot.png +0 -0
  157. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/scgen_reg_mean.png +0 -0
  158. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/tasccoda_draw_effects.png +0 -0
  159. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/tasccoda_draw_tree.png +0 -0
  160. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/docstring_previews/tasccoda_effects_umap.png +0 -0
  161. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/icons/code-24px.svg +0 -0
  162. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/icons/computer-24px.svg +0 -0
  163. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/icons/library_books-24px.svg +0 -0
  164. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/icons/play_circle_outline-24px.svg +0 -0
  165. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/placeholder.png +0 -0
  166. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/augur.png +0 -0
  167. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/cinemaot.png +0 -0
  168. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/dialogue.png +0 -0
  169. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/distances.png +0 -0
  170. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/distances_tests.png +0 -0
  171. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/enrichment.png +0 -0
  172. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/guide_rna_assignment.png +0 -0
  173. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/milo.png +0 -0
  174. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/mixscape.png +0 -0
  175. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/ontology.png +0 -0
  176. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/perturbation_space.png +0 -0
  177. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/placeholder.png +0 -0
  178. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/sccoda.png +0 -0
  179. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/sccoda_extended.png +0 -0
  180. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/scgen_perturbation_prediction.png +0 -0
  181. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_static/tutorials/tasccoda.png +0 -0
  182. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_templates/autosummary/class.rst +0 -0
  183. {pertpy-0.7.0 → pertpy-0.9.1}/docs/_templates/class_no_inherited.rst +0 -0
  184. {pertpy-0.7.0 → pertpy-0.9.1}/docs/code_of_conduct.md +0 -0
  185. {pertpy-0.7.0 → pertpy-0.9.1}/docs/make.bat +0 -0
  186. {pertpy-0.7.0 → pertpy-0.9.1}/docs/references.bib +0 -0
  187. {pertpy-0.7.0 → pertpy-0.9.1}/docs/references.md +0 -0
  188. {pertpy-0.7.0 → pertpy-0.9.1}/docs/utils.py +0 -0
  189. {pertpy-0.7.0/pertpy/tools/_coda → pertpy-0.9.1/pertpy/plot}/__init__.py +0 -0
  190. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/py.typed +0 -0
  191. {pertpy-0.7.0/pertpy/tools/_distances → pertpy-0.9.1/pertpy/tools/_coda}/__init__.py +0 -0
  192. {pertpy-0.7.0/pertpy/tools/_perturbation_space → pertpy-0.9.1/pertpy/tools/_distances}/__init__.py +0 -0
  193. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_perturbation_space/_metrics.py +0 -0
  194. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/_scgen/_scgenvae.py +0 -0
  195. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/decoupler_LICENSE +0 -0
  196. {pertpy-0.7.0 → pertpy-0.9.1}/pertpy/tools/transferlearning_MMD_LICENSE +0 -0
  197. {pertpy-0.7.0 → pertpy-0.9.1}/tests/tools/_perturbation_space/test_discriminator_classifiers.py +0 -0
  198. {pertpy-0.7.0 → pertpy-0.9.1}/tests/tools/_perturbation_space/test_simple_cluster_space.py +0 -0
  199. {pertpy-0.7.0 → pertpy-0.9.1}/tests/tools/_perturbation_space/test_simple_perturbation_space.py +0 -0
  200. {pertpy-0.7.0 → pertpy-0.9.1}/tests/tools/haber_data.csv +0 -0
  201. {pertpy-0.7.0 → pertpy-0.9.1}/tests/tools/r_result.csv +0 -0
@@ -1,5 +1,5 @@
1
- name-template: "0.7.0 🌈"
2
- tag-template: 0.7.0
1
+ name-template: "0.9.1 🌈"
2
+ tag-template: 0.9.1
3
3
  exclude-labels:
4
4
  - "skip-changelog"
5
5
 
@@ -23,10 +23,16 @@ jobs:
23
23
  include:
24
24
  - os: ubuntu-latest
25
25
  python: "3.10"
26
+ run_mode: "slow"
26
27
  - os: ubuntu-latest
27
- python: "3.11"
28
+ python: "3.12"
29
+ run_mode: "slow"
28
30
  - os: ubuntu-latest
29
- python: "3.11"
31
+ python: "3.12"
32
+ run_mode: "fast"
33
+ - os: ubuntu-latest
34
+ python: "3.12"
35
+ run_mode: slow
30
36
  pip-flags: "--pre"
31
37
 
32
38
  env:
@@ -39,26 +45,41 @@ jobs:
39
45
  uses: actions/setup-python@v5
40
46
  with:
41
47
  python-version: ${{ matrix.python }}
42
- cache: "pip"
43
- cache-dependency-path: "**/pyproject.toml"
48
+
49
+ - uses: actions/checkout@v4
50
+ - name: Install R
51
+ uses: r-lib/actions/setup-r@v2
52
+ with:
53
+ r-version: "4"
54
+
55
+ - name: Install edgeR
56
+ run: Rscript --vanilla -e "install.packages(c('BiocManager', 'statmod'), repos='https://cran.r-project.org'); library('BiocManager'); BiocManager::install('edgeR')"
44
57
 
45
58
  - name: Install test dependencies
46
59
  run: python -m pip install --upgrade uv wheel
47
60
  - name: Install dependencies
48
- run: uv pip install --system ${{ matrix.pip-flags }} ".[dev,test,coda]"
61
+ run: |
62
+ uv pip install --system rpy2
63
+ uv pip install --system ${{ matrix.pip-flags }} ".[dev,test,coda,de]"
49
64
 
50
65
  - name: Test
51
66
  env:
52
67
  MPLBACKEND: agg
53
68
  PLATFORM: ${{ matrix.os }}
54
69
  DISPLAY: :42
55
- run: coverage run -m pytest -v --color=yes
70
+ run: |
71
+ pytest_args="-m pytest -v --color=yes"
72
+ if [ "${{ matrix.run_mode }}" = "slow" ]; then
73
+ pytest_args="$pytest_args --runslow"
74
+ fi
75
+ coverage run $pytest_args
56
76
 
57
77
  - name: Show coverage report
58
78
  run: coverage report -m
59
79
 
60
80
  - name: Upload coverage
61
- uses: codecov/codecov-action@v3
81
+ uses: codecov/codecov-action@v4
62
82
  with:
83
+ token: ${{ secrets.CODECOV_TOKEN }}
63
84
  fail_ci_if_error: true
64
85
  verbose: true
@@ -1,3 +1,3 @@
1
1
  [submodule "docs/notebooks"]
2
2
  path = docs/tutorials/notebooks
3
- url = https://github.com/theislab/pertpy-tutorials/
3
+ url = https://github.com/scverse/pertpy-tutorials/
@@ -11,7 +11,7 @@ repos:
11
11
  hooks:
12
12
  - id: prettier
13
13
  - repo: https://github.com/astral-sh/ruff-pre-commit
14
- rev: v0.3.5
14
+ rev: v0.4.7
15
15
  hooks:
16
16
  - id: ruff
17
17
  args: [--fix, --exit-non-zero-on-fix, --unsafe-fixes]
@@ -27,7 +27,7 @@ repos:
27
27
  - id: trailing-whitespace
28
28
  - id: check-case-conflict
29
29
  - repo: https://github.com/pre-commit/mirrors-mypy
30
- rev: v1.9.0
30
+ rev: v1.10.0
31
31
  hooks:
32
32
  - id: mypy
33
33
  args: [--no-strict-optional, --ignore-missing-imports]
@@ -17,6 +17,7 @@ python:
17
17
  extra_requirements:
18
18
  - doc
19
19
  - coda
20
+ - de
20
21
 
21
22
  submodules:
22
23
  include: all
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pertpy
3
- Version: 0.7.0
3
+ Version: 0.9.1
4
4
  Summary: Perturbation Analysis in the scverse ecosystem.
5
5
  Project-URL: Documentation, https://pertpy.readthedocs.io
6
- Project-URL: Source, https://github.com/theislab/pertpy
7
- Project-URL: Home-page, https://github.com/theislab/pertpy
8
- Author: Lukas Heumos, Yuge Ji, Alejandro Tejada, Johannes Köster, Emma Dann, Xinyue Zhang, Xichen Wu, Amir Moinfar, Sergei Rybakov, Tessa Green, Stefan Peidli, Antonia Schumacher, Lilly May
6
+ Project-URL: Source, https://github.com/scverse/pertpy
7
+ Project-URL: Home-page, https://github.com/scverse/pertpy
8
+ Author: Lukas Heumos, Yuge Ji, Lilly May, Alejandro Tejada, Johannes Köster, Emma Dann, Xinyue Zhang, Xichen Wu, Tessa Green, Stefan Peidli, Antonia Schumacher, Gregor Sturm
9
9
  Maintainer-email: Lukas Heumos <lukas.heumos@posteo.net>
10
10
  License: MIT License
11
11
 
@@ -41,15 +41,15 @@ Classifier: Operating System :: POSIX :: Linux
41
41
  Classifier: Programming Language :: Python :: 3
42
42
  Classifier: Programming Language :: Python :: 3.10
43
43
  Classifier: Programming Language :: Python :: 3.11
44
+ Classifier: Programming Language :: Python :: 3.12
44
45
  Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
45
46
  Classifier: Topic :: Scientific/Engineering :: Visualization
46
47
  Requires-Python: >=3.10
47
48
  Requires-Dist: adjusttext
48
- Requires-Dist: arviz
49
49
  Requires-Dist: blitzgsea
50
50
  Requires-Dist: decoupler
51
+ Requires-Dist: lamin-utils
51
52
  Requires-Dist: muon
52
- Requires-Dist: numpyro
53
53
  Requires-Dist: openpyxl
54
54
  Requires-Dist: ott-jax
55
55
  Requires-Dist: pubchempy
@@ -61,10 +61,14 @@ Requires-Dist: scikit-misc
61
61
  Requires-Dist: scipy
62
62
  Requires-Dist: scvi-tools
63
63
  Requires-Dist: sparsecca
64
- Requires-Dist: toytree
65
64
  Provides-Extra: coda
65
+ Requires-Dist: arviz; extra == 'coda'
66
66
  Requires-Dist: ete3; extra == 'coda'
67
67
  Requires-Dist: pyqt5; extra == 'coda'
68
+ Requires-Dist: toytree; extra == 'coda'
69
+ Provides-Extra: de
70
+ Requires-Dist: formulaic; extra == 'de'
71
+ Requires-Dist: pydeseq2; extra == 'de'
68
72
  Provides-Extra: dev
69
73
  Requires-Dist: pre-commit; extra == 'dev'
70
74
  Provides-Extra: doc
@@ -94,18 +98,18 @@ Requires-Dist: pytest; extra == 'test'
94
98
  Description-Content-Type: text/markdown
95
99
 
96
100
  [![Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
97
- [![Build](https://github.com/theislab/pertpy/actions/workflows/build.yml/badge.svg)](https://github.com/theislab/pertpy/actions/workflows/build.yml)
98
- [![codecov](https://codecov.io/gh/theislab/pertpy/graph/badge.svg?token=1dTpIPBShv)](https://codecov.io/gh/theislab/pertpy)
99
- [![License](https://img.shields.io/github/license/theislab/pertpy)](https://opensource.org/licenses/Apache2.0)
101
+ [![Build](https://github.com/scverse/pertpy/actions/workflows/build.yml/badge.svg)](https://github.com/scverse/pertpy/actions/workflows/build.yml)
102
+ [![codecov](https://codecov.io/gh/scverse/pertpy/graph/badge.svg?token=1dTpIPBShv)](https://codecov.io/gh/scverse/pertpy)
103
+ [![License](https://img.shields.io/github/license/scverse/pertpy)](https://opensource.org/licenses/Apache2.0)
100
104
  [![PyPI](https://img.shields.io/pypi/v/pertpy.svg)](https://pypi.org/project/pertpy/)
101
105
  [![Python Version](https://img.shields.io/pypi/pyversions/pertpy)](https://pypi.org/project/pertpy)
102
106
  [![Read the Docs](https://img.shields.io/readthedocs/pertpy/latest.svg?label=Read%20the%20Docs)](https://pertpy.readthedocs.io/)
103
- [![Test](https://github.com/theislab/pertpy/actions/workflows/test.yml/badge.svg)](https://github.com/theislab/pertpy/actions/workflows/test.yml)
107
+ [![Test](https://github.com/scverse/pertpy/actions/workflows/test.yml/badge.svg)](https://github.com/scverse/pertpy/actions/workflows/test.yml)
104
108
  [![PyPI](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit)
105
109
 
106
110
  # pertpy
107
111
 
108
- ![fig1](https://github.com/theislab/pertpy/assets/99650244/182fa9c3-6d23-4002-b86a-82bf2a243377)
112
+ ![fig1](https://github.com/user-attachments/assets/d2e32d69-b767-4be3-a938-77a9dce45d3f)
109
113
 
110
114
  ## Documentation
111
115
 
@@ -113,18 +117,32 @@ Please read the [documentation](https://pertpy.readthedocs.io/en/latest).
113
117
 
114
118
  ## Installation
115
119
 
116
- You can install _pertpy_ via [pip] from [PyPI]:
120
+ We recommend installing and running pertpy on a recent version of Linux (e.g. Ubuntu 24.04 LTS).
121
+ No particular hardware beyond a standard laptop is required.
122
+
123
+ You can install _pertpy_ in less than a minute via [pip] from [PyPI]:
117
124
 
118
125
  ```console
119
126
  pip install pertpy
120
127
  ```
121
128
 
122
- if you want to use scCODA please install it as:
129
+ if you want to use scCODA or tascCODA, please install pertpy as follows:
123
130
 
124
131
  ```console
125
132
  pip install pertpy[coda]
126
133
  ```
127
134
 
135
+ If you want to use the differential gene expression interface, please install pertpy by running:
136
+
137
+ ```console
138
+ pip install pertpy[de]
139
+ ```
140
+
141
+ ## Citation
142
+
143
+ [Lukas Heumos, Yuge Ji, Lilly May, Tessa Green, Xinyue Zhang, Xichen Wu, Johannes Ostner, Stefan Peidli, Antonia Schumacher, Karin Hrovatin, Michaela Mueller, Faye Chong, Gregor Sturm, Alejandro Tejada, Emma Dann, Mingze Dong, Mojtaba Bahrami, Ilan Gold, Sergei Rybakov, Altana Namsaraeva, Amir Ali Moinfar, Zihe Zheng, Eljas Roellin, Isra Mekki, Chris Sander, Mohammad Lotfollahi, Herbert B. Schiller, Fabian J. Theis
144
+ bioRxiv 2024.08.04.606516; doi: https://doi.org/10.1101/2024.08.04.606516](https://www.biorxiv.org/content/10.1101/2024.08.04.606516v1)
145
+
128
146
  [pip]: https://pip.pypa.io/
129
147
  [pypi]: https://pypi.org/
130
148
  [usage]: https://pertpy.readthedocs.io/en/latest/usage/usage.html
pertpy-0.9.1/README.md ADDED
@@ -0,0 +1,49 @@
1
+ [![Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
2
+ [![Build](https://github.com/scverse/pertpy/actions/workflows/build.yml/badge.svg)](https://github.com/scverse/pertpy/actions/workflows/build.yml)
3
+ [![codecov](https://codecov.io/gh/scverse/pertpy/graph/badge.svg?token=1dTpIPBShv)](https://codecov.io/gh/scverse/pertpy)
4
+ [![License](https://img.shields.io/github/license/scverse/pertpy)](https://opensource.org/licenses/Apache2.0)
5
+ [![PyPI](https://img.shields.io/pypi/v/pertpy.svg)](https://pypi.org/project/pertpy/)
6
+ [![Python Version](https://img.shields.io/pypi/pyversions/pertpy)](https://pypi.org/project/pertpy)
7
+ [![Read the Docs](https://img.shields.io/readthedocs/pertpy/latest.svg?label=Read%20the%20Docs)](https://pertpy.readthedocs.io/)
8
+ [![Test](https://github.com/scverse/pertpy/actions/workflows/test.yml/badge.svg)](https://github.com/scverse/pertpy/actions/workflows/test.yml)
9
+ [![PyPI](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit)
10
+
11
+ # pertpy
12
+
13
+ ![fig1](https://github.com/user-attachments/assets/d2e32d69-b767-4be3-a938-77a9dce45d3f)
14
+
15
+ ## Documentation
16
+
17
+ Please read the [documentation](https://pertpy.readthedocs.io/en/latest).
18
+
19
+ ## Installation
20
+
21
+ We recommend installing and running pertpy on a recent version of Linux (e.g. Ubuntu 24.04 LTS).
22
+ No particular hardware beyond a standard laptop is required.
23
+
24
+ You can install _pertpy_ in less than a minute via [pip] from [PyPI]:
25
+
26
+ ```console
27
+ pip install pertpy
28
+ ```
29
+
30
+ if you want to use scCODA or tascCODA, please install pertpy as follows:
31
+
32
+ ```console
33
+ pip install pertpy[coda]
34
+ ```
35
+
36
+ If you want to use the differential gene expression interface, please install pertpy by running:
37
+
38
+ ```console
39
+ pip install pertpy[de]
40
+ ```
41
+
42
+ ## Citation
43
+
44
+ [Lukas Heumos, Yuge Ji, Lilly May, Tessa Green, Xinyue Zhang, Xichen Wu, Johannes Ostner, Stefan Peidli, Antonia Schumacher, Karin Hrovatin, Michaela Mueller, Faye Chong, Gregor Sturm, Alejandro Tejada, Emma Dann, Mingze Dong, Mojtaba Bahrami, Ilan Gold, Sergei Rybakov, Altana Namsaraeva, Amir Ali Moinfar, Zihe Zheng, Eljas Roellin, Isra Mekki, Chris Sander, Mohammad Lotfollahi, Herbert B. Schiller, Fabian J. Theis
45
+ bioRxiv 2024.08.04.606516; doi: https://doi.org/10.1101/2024.08.04.606516](https://www.biorxiv.org/content/10.1101/2024.08.04.606516v1)
46
+
47
+ [pip]: https://pip.pypa.io/
48
+ [pypi]: https://pypi.org/
49
+ [usage]: https://pertpy.readthedocs.io/en/latest/usage/usage.html
@@ -37,7 +37,7 @@ def _html_page_context(
37
37
 
38
38
  # For sphinx_rtd_theme.
39
39
  context["display_github"] = True
40
- context["github_user"] = "theislab"
40
+ context["github_user"] = "scverse"
41
41
  context["github_version"] = "master"
42
42
  context["github_repo"] = repo
43
43
  context["conf_py_path"] = "/docs/source/"
@@ -2,6 +2,8 @@
2
2
  # mypy: ignore-errors
3
3
 
4
4
  import sys
5
+ from datetime import datetime
6
+ from importlib.metadata import metadata
5
7
  from pathlib import Path
6
8
 
7
9
  HERE = Path(__file__).parent
@@ -9,13 +11,16 @@ sys.path[:0] = [str(HERE.parent), str(HERE / "extensions")]
9
11
 
10
12
  needs_sphinx = "4.3"
11
13
 
12
- project = "pertpy"
13
- copyright = "2021, Lukas Heumos, Theislab"
14
- author = "Lukas Heumos"
14
+ info = metadata("pertpy")
15
+ project_name = info["Name"]
16
+ author = info["Author"]
17
+ copyright = f"{datetime.now():%Y}, {author}."
18
+ version = info["Version"]
19
+ urls = dict(pu.split(", ") for pu in info.get_all("Project-URL"))
20
+ repository_url = urls["Source"]
21
+ release = info["Version"]
15
22
  github_repo = "pertpy"
16
23
 
17
- version = "0.7.0"
18
- release = "0.7.0"
19
24
 
20
25
  extensions = [
21
26
  "myst_parser",
@@ -97,7 +102,8 @@ intersphinx_mapping = {
97
102
 
98
103
  language = "en"
99
104
 
100
- # The name of the Pygments (syntax highlighting) style to use.
105
+ typehints_defaults = "comma"
106
+
101
107
  pygments_style = "default"
102
108
  pygments_dark_style = "native"
103
109
 
@@ -166,7 +172,7 @@ nbsphinx_prolog = r"""
166
172
  <p class="admonition-title">Note</p>
167
173
  <p>
168
174
  This page was generated from
169
- <a class="reference external" href="https://github.com/theislab/pertpy/tree/{version}/">{docname}</a>.
175
+ <a class="reference external" href="https://github.com/scverse/pertpy/tree/{version}/">{docname}</a>.
170
176
  Some tutorial content may look better in light mode.
171
177
  </p>
172
178
  </div>
@@ -185,6 +191,8 @@ nbsphinx_thumbnails = {
185
191
  "tutorials/notebooks/distance_tests": "_static/tutorials/distances_tests.png",
186
192
  "tutorials/notebooks/cinemaot": "_static/tutorials/cinemaot.png",
187
193
  "tutorials/notebooks/scgen_perturbation_prediction": "_static/tutorials/scgen_perturbation_prediction.png",
188
- "tutorials/notebooks/ontology_mapping": "_static/tutorials/ontology.png",
189
194
  "tutorials/notebooks/perturbation_space": "_static/tutorials/perturbation_space.png",
195
+ "tutorials/notebooks/differential_gene_expression": "_static/tutorials/dge.png",
196
+ "tutorials/notebooks/metadata_annotation": "_static/tutorials/metadata.png",
197
+ "tutorials/notebooks/ontology_mapping": "_static/tutorials/ontology.png",
190
198
  }
@@ -13,7 +13,7 @@ In addition to the packages needed to _use_ this package, you need additional py
13
13
  the documentation_. It's easy to install them using `pip`:
14
14
 
15
15
  ```bash
16
- git clone https://github.com/theislab/pertpy.git
16
+ git clone https://github.com/scverse/pertpy.git
17
17
  cd pertpy
18
18
  pip install -e ".[dev,test,doc]"
19
19
  ```
@@ -146,7 +146,7 @@ on how to write documentation.
146
146
  The documentation is set-up to render jupyter notebooks stored in the `docs/tutorials` directory using [myst-nb][].
147
147
  Currently, only notebooks in `.ipynb` format are supported that will be included with both their input and output cells.
148
148
 
149
- These notebooks come from [pert-tutorials](https://github.com/theislab/pertpy-tutorials) which is a git submodule of pertpy.
149
+ These notebooks come from [pert-tutorials](https://github.com/scverse/pertpy-tutorials) which is a git submodule of pertpy.
150
150
 
151
151
  #### Hints
152
152
 
@@ -34,7 +34,7 @@
34
34
 
35
35
  ```{eval-rst}
36
36
  .. card:: GitHub :octicon:`mark-github;1em;`
37
- :link: https://github.com/theislab/pertpy
37
+ :link: https://github.com/scverse/pertpy
38
38
 
39
39
  Find a bug? Interested in improving pertpy? Checkout our GitHub for the latest developments.
40
40
 
@@ -50,7 +50,7 @@ usage/usage
50
50
  tutorials/index
51
51
  contributing
52
52
  code_of_conduct
53
- Discussions <https://github.com/theislab/pertpy/discussions>
53
+ Discussions <https://github.com/scverse/pertpy/discussions>
54
54
  references
55
55
  ```
56
56
 
@@ -9,7 +9,7 @@
9
9
  To install pertpy, run this command in your terminal:
10
10
 
11
11
  ```console
12
- $ pip install pertpy
12
+ pip install pertpy
13
13
  ```
14
14
 
15
15
  This is the preferred method to install pertpy, as it will always install the most recent stable release.
@@ -18,14 +18,32 @@ If you don't have [pip] installed, this [Python installation guide] can guide yo
18
18
 
19
19
  ## Google Colab and TascCODA support
20
20
 
21
- TascCODA requires an additional set of dependencies (ete3 and pyqt5) that can be installed using
21
+ TascCODA requires an additional set of dependencies (ete3 and pyqt5) that can be installed by running:
22
22
 
23
23
  ```console
24
- $ pip install pertpy[coda]
24
+ pip install pertpy[coda]
25
25
  ```
26
26
 
27
27
  this also solves any "AttributeError: module 'pertpy.plot' has no attribute 'coda'" issues.
28
28
 
29
+ ## Differential gene expression interface
30
+
31
+ The DGE interface of pertpy requires additional dependencies that can be installed by running:
32
+
33
+ ```console
34
+ pip install pertpy[de]
35
+ ```
36
+
37
+ Note that edger in pertpy requires edger and rpy2 to be installed:
38
+
39
+ ```R
40
+ BiocManager::install("edgeR")
41
+ ```
42
+
43
+ ```console
44
+ pip install rpy2
45
+ ```
46
+
29
47
  ## From sources
30
48
 
31
49
  The sources for pertpy can be downloaded from the [Github repo].
@@ -34,13 +52,13 @@ Please note that you require [poetry] to be installed.
34
52
  You can either clone the public repository:
35
53
 
36
54
  ```console
37
- $ git clone git://github.com/theislab/pertpy
55
+ $ git clone git://github.com/scverse/pertpy
38
56
  ```
39
57
 
40
58
  Or download the [tarball]:
41
59
 
42
60
  ```console
43
- $ curl -OJL https://github.com/theislab/pertpy/tarball/master
61
+ $ curl -OJL https://github.com/scverse/pertpy/tarball/master
44
62
  ```
45
63
 
46
64
  ## Apple Silicon
@@ -57,35 +75,35 @@ Follow these steps to install pertpy on an Apple Silicon machine (tested on a Ma
57
75
  having both mamba and conda won't cause conflicts)
58
76
 
59
77
  ```console
60
- $ brew install --cask mambaforge
78
+ brew install --cask mambaforge
61
79
  ```
62
80
 
63
81
  3. Create a new environment using mamba (here with python 3.10) and activate it
64
82
 
65
83
  ```console
66
- $ mamba create -n pertpy-env python=3.11
67
- $ mamba activate pertpy-env
84
+ mamba create -n pertpy-env python=3.11
85
+ mamba activate pertpy-env
68
86
  ```
69
87
 
70
88
  4. Clone the GitHub Repository
71
89
 
72
90
  ```console
73
- $ git clone https://github.com/theislab/pertpy.git
91
+ git clone https://github.com/scverse/pertpy.git
74
92
  ```
75
93
 
76
94
  5. Go inside the pertpy folder and install pertpy
77
95
 
78
96
  ```console
79
- $ cd pertpy
80
- $ pip install .
97
+ cd pertpy
98
+ pip install .
81
99
  ```
82
100
 
83
101
  Now you're ready to use pertpy as usual within the environment (`import pertpy`).
84
102
 
85
- [github repo]: https://github.com/theislab/pertpy
103
+ [github repo]: https://github.com/scverse/pertpy
86
104
  [pip]: https://pip.pypa.io
87
105
  [poetry]: https://python-poetry.org/
88
106
  [python installation guide]: http://docs.python-guide.org/en/latest/starting/installation/
89
- [tarball]: https://github.com/theislab/pertpy/tarball/master
107
+ [tarball]: https://github.com/scverse/pertpy/tarball/master
90
108
  [scvi-tools]: https://docs.scvi-tools.org/en/latest/installation.html
91
109
  [Homebrew]: https://brew.sh/
@@ -29,8 +29,10 @@ For questions about the usage of pertpy use the [scverse discourse](https://disc
29
29
  notebooks/distance_tests
30
30
  notebooks/cinemaot
31
31
  notebooks/scgen_perturbation_prediction
32
- notebooks/ontology_mapping
33
32
  notebooks/perturbation_space
33
+ notebooks/differential_gene_expression
34
+ notebooks/metadata_annotation
35
+ notebooks/ontology_mapping
34
36
  ```
35
37
 
36
38
  ### Glossary
@@ -38,8 +38,10 @@ harmonized names and be loadable as MuData objects.
38
38
  data.datlinger_2017
39
39
  data.datlinger_2021
40
40
  data.dialogue_example
41
+ data.distance_example
41
42
  data.dixit_2016
42
43
  data.dixit_2016_raw
44
+ data.dong_2023
43
45
  data.frangieh_2021
44
46
  data.frangieh_2021_protein
45
47
  data.frangieh_2021_raw
@@ -49,6 +51,7 @@ harmonized names and be loadable as MuData objects.
49
51
  data.gasperini_2019_lowmoi
50
52
  data.gehring_2019
51
53
  data.haber_2017_regions
54
+ data.hagai_2018
52
55
  data.kang_2018
53
56
  data.mcfarland_2020
54
57
  data.norman_2019
@@ -62,6 +65,7 @@ harmonized names and be loadable as MuData objects.
62
65
  data.schiebinger_2019_18day
63
66
  data.schraivogel_2020_tap_screen_chr8
64
67
  data.schraivogel_2020_tap_screen_chr11
68
+ data.sciplex_gxe1
65
69
  data.sciplex3_raw
66
70
  data.shifrut_2018
67
71
  data.smillie_2019
@@ -69,6 +73,7 @@ harmonized names and be loadable as MuData objects.
69
73
  data.srivatsan_2020_sciplex3
70
74
  data.srivatsan_2020_sciplex4
71
75
  data.stephenson_2021_subsampled
76
+ data.tasccoda_example
72
77
  data.tian_2019_day7neuron
73
78
  data.tian_2019_ipsc
74
79
  data.tian_2021_crispra
@@ -76,6 +81,7 @@ harmonized names and be loadable as MuData objects.
76
81
  data.weinreb_2020
77
82
  data.xie_2017
78
83
  data.zhao_2021
84
+ data.zhang_2021
79
85
  ```
80
86
 
81
87
  ## Preprocessing
@@ -126,7 +132,11 @@ Pertpy provides utilities to conduct differential gene expression tests through
126
132
  :toctree: preprocessing
127
133
  :nosignatures:
128
134
 
129
- tools.DifferentialGeneExpression
135
+ tools.PyDESeq2
136
+ tools.EdgeR
137
+ tools.WilcoxonTest
138
+ tools.TTest
139
+ tools.Statsmodels
130
140
  ```
131
141
 
132
142
  ### Pooled CRISPR screens
@@ -455,8 +465,8 @@ train_new = train[
455
465
  ]
456
466
  train_new = train_new.copy()
457
467
 
458
- pt.tl.SCGEN.setup_anndata(train_new, batch_key="condition", labels_key="cell_type")
459
- scgen = pt.tl.SCGEN(train_new)
468
+ pt.tl.Scgen.setup_anndata(train_new, batch_key="condition", labels_key="cell_type")
469
+ scgen = pt.tl.Scgen(train_new)
460
470
  scgen.train(max_epochs=100, batch_size=32)
461
471
 
462
472
  pred, delta = scgen.predict(
@@ -2,7 +2,7 @@
2
2
 
3
3
  __author__ = "Lukas Heumos"
4
4
  __email__ = "lukas.heumos@posteo.net"
5
- __version__ = "0.7.0"
5
+ __version__ = "0.9.1"
6
6
 
7
7
  import warnings
8
8
 
@@ -11,6 +11,7 @@ from numba import NumbaDeprecationWarning
11
11
 
12
12
  warnings.filterwarnings("ignore", category=NumbaDeprecationWarning)
13
13
  warnings.filterwarnings("ignore", category=MatplotlibDeprecationWarning)
14
+ warnings.filterwarnings("ignore", category=SyntaxWarning)
14
15
  warnings.filterwarnings("ignore", category=UserWarning, module="scvi._settings")
15
16
 
16
17
  from . import data as dt