smftools 0.2.4__py3-none-any.whl → 0.2.5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. smftools/__init__.py +6 -8
  2. smftools/_settings.py +4 -6
  3. smftools/_version.py +1 -1
  4. smftools/cli/helpers.py +7 -1
  5. smftools/cli/hmm_adata.py +902 -244
  6. smftools/cli/load_adata.py +318 -198
  7. smftools/cli/preprocess_adata.py +285 -171
  8. smftools/cli/spatial_adata.py +137 -53
  9. smftools/cli_entry.py +94 -178
  10. smftools/config/__init__.py +1 -1
  11. smftools/config/conversion.yaml +5 -1
  12. smftools/config/deaminase.yaml +1 -1
  13. smftools/config/default.yaml +22 -17
  14. smftools/config/direct.yaml +8 -3
  15. smftools/config/discover_input_files.py +19 -5
  16. smftools/config/experiment_config.py +505 -276
  17. smftools/constants.py +37 -0
  18. smftools/datasets/__init__.py +2 -8
  19. smftools/datasets/datasets.py +32 -18
  20. smftools/hmm/HMM.py +2125 -1426
  21. smftools/hmm/__init__.py +2 -3
  22. smftools/hmm/archived/call_hmm_peaks.py +16 -1
  23. smftools/hmm/call_hmm_peaks.py +173 -193
  24. smftools/hmm/display_hmm.py +19 -6
  25. smftools/hmm/hmm_readwrite.py +13 -4
  26. smftools/hmm/nucleosome_hmm_refinement.py +102 -14
  27. smftools/informatics/__init__.py +30 -7
  28. smftools/informatics/archived/helpers/archived/align_and_sort_BAM.py +14 -1
  29. smftools/informatics/archived/helpers/archived/bam_qc.py +14 -1
  30. smftools/informatics/archived/helpers/archived/concatenate_fastqs_to_bam.py +8 -1
  31. smftools/informatics/archived/helpers/archived/load_adata.py +3 -3
  32. smftools/informatics/archived/helpers/archived/plot_bed_histograms.py +3 -1
  33. smftools/informatics/archived/print_bam_query_seq.py +7 -1
  34. smftools/informatics/bam_functions.py +379 -156
  35. smftools/informatics/basecalling.py +51 -9
  36. smftools/informatics/bed_functions.py +90 -57
  37. smftools/informatics/binarize_converted_base_identities.py +18 -7
  38. smftools/informatics/complement_base_list.py +7 -6
  39. smftools/informatics/converted_BAM_to_adata.py +265 -122
  40. smftools/informatics/fasta_functions.py +161 -83
  41. smftools/informatics/h5ad_functions.py +195 -29
  42. smftools/informatics/modkit_extract_to_adata.py +609 -270
  43. smftools/informatics/modkit_functions.py +85 -44
  44. smftools/informatics/ohe.py +44 -21
  45. smftools/informatics/pod5_functions.py +112 -73
  46. smftools/informatics/run_multiqc.py +20 -14
  47. smftools/logging_utils.py +51 -0
  48. smftools/machine_learning/__init__.py +2 -7
  49. smftools/machine_learning/data/anndata_data_module.py +143 -50
  50. smftools/machine_learning/data/preprocessing.py +2 -1
  51. smftools/machine_learning/evaluation/__init__.py +1 -1
  52. smftools/machine_learning/evaluation/eval_utils.py +11 -14
  53. smftools/machine_learning/evaluation/evaluators.py +46 -33
  54. smftools/machine_learning/inference/__init__.py +1 -1
  55. smftools/machine_learning/inference/inference_utils.py +7 -4
  56. smftools/machine_learning/inference/lightning_inference.py +9 -13
  57. smftools/machine_learning/inference/sklearn_inference.py +6 -8
  58. smftools/machine_learning/inference/sliding_window_inference.py +35 -25
  59. smftools/machine_learning/models/__init__.py +10 -5
  60. smftools/machine_learning/models/base.py +28 -42
  61. smftools/machine_learning/models/cnn.py +15 -11
  62. smftools/machine_learning/models/lightning_base.py +71 -40
  63. smftools/machine_learning/models/mlp.py +13 -4
  64. smftools/machine_learning/models/positional.py +3 -2
  65. smftools/machine_learning/models/rnn.py +3 -2
  66. smftools/machine_learning/models/sklearn_models.py +39 -22
  67. smftools/machine_learning/models/transformer.py +68 -53
  68. smftools/machine_learning/models/wrappers.py +2 -1
  69. smftools/machine_learning/training/__init__.py +2 -2
  70. smftools/machine_learning/training/train_lightning_model.py +29 -20
  71. smftools/machine_learning/training/train_sklearn_model.py +9 -15
  72. smftools/machine_learning/utils/__init__.py +1 -1
  73. smftools/machine_learning/utils/device.py +7 -4
  74. smftools/machine_learning/utils/grl.py +3 -1
  75. smftools/metadata.py +443 -0
  76. smftools/plotting/__init__.py +19 -5
  77. smftools/plotting/autocorrelation_plotting.py +145 -44
  78. smftools/plotting/classifiers.py +162 -72
  79. smftools/plotting/general_plotting.py +347 -168
  80. smftools/plotting/hmm_plotting.py +42 -13
  81. smftools/plotting/position_stats.py +145 -85
  82. smftools/plotting/qc_plotting.py +20 -12
  83. smftools/preprocessing/__init__.py +8 -8
  84. smftools/preprocessing/append_base_context.py +105 -79
  85. smftools/preprocessing/append_binary_layer_by_base_context.py +75 -37
  86. smftools/preprocessing/{archives → archived}/calculate_complexity.py +3 -1
  87. smftools/preprocessing/{archives → archived}/preprocessing.py +8 -6
  88. smftools/preprocessing/binarize.py +21 -4
  89. smftools/preprocessing/binarize_on_Youden.py +127 -31
  90. smftools/preprocessing/binary_layers_to_ohe.py +17 -11
  91. smftools/preprocessing/calculate_complexity_II.py +86 -59
  92. smftools/preprocessing/calculate_consensus.py +28 -19
  93. smftools/preprocessing/calculate_coverage.py +44 -22
  94. smftools/preprocessing/calculate_pairwise_differences.py +2 -1
  95. smftools/preprocessing/calculate_pairwise_hamming_distances.py +4 -3
  96. smftools/preprocessing/calculate_position_Youden.py +103 -55
  97. smftools/preprocessing/calculate_read_length_stats.py +52 -23
  98. smftools/preprocessing/calculate_read_modification_stats.py +91 -57
  99. smftools/preprocessing/clean_NaN.py +38 -28
  100. smftools/preprocessing/filter_adata_by_nan_proportion.py +24 -12
  101. smftools/preprocessing/filter_reads_on_length_quality_mapping.py +70 -37
  102. smftools/preprocessing/filter_reads_on_modification_thresholds.py +181 -73
  103. smftools/preprocessing/flag_duplicate_reads.py +688 -271
  104. smftools/preprocessing/invert_adata.py +26 -11
  105. smftools/preprocessing/load_sample_sheet.py +40 -22
  106. smftools/preprocessing/make_dirs.py +8 -3
  107. smftools/preprocessing/min_non_diagonal.py +2 -1
  108. smftools/preprocessing/recipes.py +56 -23
  109. smftools/preprocessing/reindex_references_adata.py +93 -27
  110. smftools/preprocessing/subsample_adata.py +33 -16
  111. smftools/readwrite.py +264 -109
  112. smftools/schema/__init__.py +11 -0
  113. smftools/schema/anndata_schema_v1.yaml +227 -0
  114. smftools/tools/__init__.py +3 -4
  115. smftools/tools/archived/classifiers.py +163 -0
  116. smftools/tools/archived/subset_adata_v1.py +10 -1
  117. smftools/tools/archived/subset_adata_v2.py +12 -1
  118. smftools/tools/calculate_umap.py +54 -15
  119. smftools/tools/cluster_adata_on_methylation.py +115 -46
  120. smftools/tools/general_tools.py +70 -25
  121. smftools/tools/position_stats.py +229 -98
  122. smftools/tools/read_stats.py +50 -29
  123. smftools/tools/spatial_autocorrelation.py +365 -192
  124. smftools/tools/subset_adata.py +23 -21
  125. {smftools-0.2.4.dist-info → smftools-0.2.5.dist-info}/METADATA +15 -43
  126. smftools-0.2.5.dist-info/RECORD +181 -0
  127. smftools-0.2.4.dist-info/RECORD +0 -176
  128. /smftools/preprocessing/{archives → archived}/add_read_length_and_mapping_qc.py +0 -0
  129. /smftools/preprocessing/{archives → archived}/mark_duplicates.py +0 -0
  130. /smftools/preprocessing/{archives → archived}/remove_duplicates.py +0 -0
  131. {smftools-0.2.4.dist-info → smftools-0.2.5.dist-info}/WHEEL +0 -0
  132. {smftools-0.2.4.dist-info → smftools-0.2.5.dist-info}/entry_points.txt +0 -0
  133. {smftools-0.2.4.dist-info → smftools-0.2.5.dist-info}/licenses/LICENSE +0 -0
@@ -1,28 +1,30 @@
1
1
  # subset_adata
2
2
 
3
- def subset_adata(adata, columns, cat_type='obs'):
4
- """
5
- Adds subset metadata to an AnnData object based on categorical values in specified .obs or .var columns.
6
-
7
- Parameters:
8
- adata (AnnData): The AnnData object to add subset metadata to.
9
- columns (list of str): List of .obs or .var column names to subset by. The order matters.
10
- cat_type (str): obs or var. Default is obs
11
-
12
- Returns:
13
- None
14
- """
15
- import pandas as pd
3
+ from __future__ import annotations
4
+
5
+ from typing import TYPE_CHECKING, Sequence
6
+
7
+ if TYPE_CHECKING:
16
8
  import anndata as ad
17
9
 
18
- subgroup_name = '_'.join(columns)
19
- if 'obs' in cat_type:
10
+
11
+ def subset_adata(adata: "ad.AnnData", columns: Sequence[str], cat_type: str = "obs") -> None:
12
+ """Add subset metadata based on categorical values in ``.obs`` or ``.var`` columns.
13
+
14
+ Args:
15
+ adata: AnnData object to annotate.
16
+ columns: Obs or var column names to subset by (order matters).
17
+ cat_type: ``"obs"`` or ``"var"``.
18
+ """
19
+
20
+ subgroup_name = "_".join(columns)
21
+ if "obs" in cat_type:
20
22
  df = adata.obs[columns]
21
- adata.obs[subgroup_name] = df.apply(lambda row: '_'.join(row.astype(str)), axis=1)
22
- adata.obs[subgroup_name] = adata.obs[subgroup_name].astype('category')
23
- elif 'var' in cat_type:
23
+ adata.obs[subgroup_name] = df.apply(lambda row: "_".join(row.astype(str)), axis=1)
24
+ adata.obs[subgroup_name] = adata.obs[subgroup_name].astype("category")
25
+ elif "var" in cat_type:
24
26
  df = adata.var[columns]
25
- adata.var[subgroup_name] = df.apply(lambda row: '_'.join(row.astype(str)), axis=1)
26
- adata.var[subgroup_name] = adata.var[subgroup_name].astype('category')
27
+ adata.var[subgroup_name] = df.apply(lambda row: "_".join(row.astype(str)), axis=1)
28
+ adata.var[subgroup_name] = adata.var[subgroup_name].astype("category")
27
29
 
28
- return None
30
+ return None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: smftools
3
- Version: 0.2.4
3
+ Version: 0.2.5
4
4
  Summary: Single Molecule Footprinting Analysis in Python.
5
5
  Project-URL: Source, https://github.com/jkmckenna/smftools
6
6
  Project-URL: Documentation, https://smftools.readthedocs.io/
@@ -37,13 +37,14 @@ Classifier: License :: OSI Approved :: MIT License
37
37
  Classifier: Natural Language :: English
38
38
  Classifier: Operating System :: MacOS :: MacOS X
39
39
  Classifier: Programming Language :: Python :: 3
40
- Classifier: Programming Language :: Python :: 3.9
41
40
  Classifier: Programming Language :: Python :: 3.10
42
41
  Classifier: Programming Language :: Python :: 3.11
43
42
  Classifier: Programming Language :: Python :: 3.12
43
+ Classifier: Programming Language :: Python :: 3.13
44
+ Classifier: Programming Language :: Python :: 3.14
44
45
  Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
45
46
  Classifier: Topic :: Scientific/Engineering :: Visualization
46
- Requires-Python: <3.13,>=3.9
47
+ Requires-Python: >=3.10
47
48
  Requires-Dist: anndata>=0.10.0
48
49
  Requires-Dist: biopython>=1.79
49
50
  Requires-Dist: captum
@@ -72,24 +73,28 @@ Requires-Dist: torch>=1.9.0
72
73
  Requires-Dist: tqdm
73
74
  Requires-Dist: upsetplot
74
75
  Requires-Dist: wandb
76
+ Provides-Extra: dev
77
+ Requires-Dist: pre-commit; extra == 'dev'
78
+ Requires-Dist: pytest; extra == 'dev'
79
+ Requires-Dist: pytest-cov; extra == 'dev'
80
+ Requires-Dist: ruff; extra == 'dev'
75
81
  Provides-Extra: docs
76
82
  Requires-Dist: ipython>=7.20; extra == 'docs'
77
83
  Requires-Dist: matplotlib!=3.6.1; extra == 'docs'
78
84
  Requires-Dist: myst-nb>=1; extra == 'docs'
79
85
  Requires-Dist: myst-parser>=2; extra == 'docs'
80
86
  Requires-Dist: nbsphinx>=0.9; extra == 'docs'
87
+ Requires-Dist: pyyaml; extra == 'docs'
81
88
  Requires-Dist: readthedocs-sphinx-search; extra == 'docs'
82
89
  Requires-Dist: setuptools; extra == 'docs'
83
90
  Requires-Dist: sphinx-autodoc-typehints>=1.25.2; extra == 'docs'
84
91
  Requires-Dist: sphinx-book-theme>=1.1.0; extra == 'docs'
92
+ Requires-Dist: sphinx-click; extra == 'docs'
85
93
  Requires-Dist: sphinx-copybutton; extra == 'docs'
86
94
  Requires-Dist: sphinx-design; extra == 'docs'
87
95
  Requires-Dist: sphinx>=7; extra == 'docs'
88
96
  Requires-Dist: sphinxcontrib-bibtex; extra == 'docs'
89
97
  Requires-Dist: sphinxext-opengraph; extra == 'docs'
90
- Provides-Extra: tests
91
- Requires-Dist: pytest; extra == 'tests'
92
- Requires-Dist: pytest-cov; extra == 'tests'
93
98
  Description-Content-Type: text/markdown
94
99
 
95
100
  [![PyPI](https://img.shields.io/pypi/v/smftools.svg)](https://pypi.org/project/smftools)
@@ -102,40 +107,7 @@ A Python tool for processing raw sequencing data derived from single molecule fo
102
107
  While genomic data structures (SAM/BAM) were built to handle low-coverage data (<1000X) along large references, smftools prioritizes high-coverage data (scalable to >1,000,000X coverage) of a few genomic loci at a time. This enables efficient data storage, rapid data operations, hierarchical metadata handling, seamless integration with various machine-learning packages, and ease of visualization. Furthermore, functionality is modularized, enabling analysis sessions to be saved, reloaded, and easily shared with collaborators. Analyses are centered around the [anndata](https://anndata.readthedocs.io/en/latest/) object, and are heavily inspired by the work conducted within the single-cell genomics community.
103
108
 
104
109
  ## Dependencies
105
- The following CLI tools need to be installed and configured before using the informatics (smftools.inform) module of smftools:
106
- 1) [Dorado](https://github.com/nanoporetech/dorado) -> Basecalling, alignment, demultiplexing.
107
- 2) [Minimap2](https://github.com/lh3/minimap2) -> Alignment if not using dorado.
108
- 3) [Modkit](https://github.com/nanoporetech/modkit) -> Extracting read level methylation metrics from modified BAM files. Only required for direct modification detection (ie methylation).
109
-
110
- ## Main Commands
111
- ### smftools load: Processes raw Nanopore/Illumina data from SMF experiments into an AnnData object.
112
- ![](docs/source/_static/smftools_informatics_diagram.png)
113
- ### smftools preprocess: Appends QC metrics to the AnnData object and performs filtering.
114
- ![](docs/source/_static/smftools_preprocessing_diagram.png)
115
- ### smftools spatial: Appends spatial analyses to the AnnData object.
116
- - Currently Includes: Position X Position correlation matrices, clustering, dimensionality reduction, spatial autocorrelation.
117
- ### smftools hmm: Fits a basic HMM to each sample and appends HMM feature layers
118
- - Main outputs wills be stored in adata.layers
119
- ### smftools batch <command>: Performs batch processing on a csv of config file pathes for any of the above commands.
120
- - Nice when analyzing multiple experiments
121
- ### smftools concatenate: Concatenates a list or directory of anndata objects.
122
- - Mainly used for combining multiple experiments into a single anndata object.
123
-
124
- ## Announcements
125
-
126
- ### 12/02/25 - Version 0.2.3 is available through PyPI
127
- Version 0.2.3 provides the core smftools functionality through several command line commands (load, preprocess, spatial, hmm).
128
-
129
- ### 11/05/25 - Version 0.2.1 is available through PyPI
130
- Version 0.2.1 makes the core workflow (smftools load) a command line tool that takes in an experiment_config.csv file for input/output and parameter management.
131
-
132
- ### 05/29/25 - Version 0.1.6 is available through PyPI.
133
- Informatics, preprocessing, tools, plotting modules have core functionality that is approaching stability on MacOS(Intel/Silicon) and Linux(Ubuntu). I will work on improving documentation/tutorials shortly. The base PyTorch/Scikit-Learn ML-infrastructure is going through some organizational changes to work with PyTorch Lightning, Hydra, and WanDB to facilitate organizational scaling, multi-device usage, and logging.
134
-
135
- ### 10/01/24 - More recent versions are being updated frequently. Installation from source over PyPI is recommended!
136
-
137
- ### 09/09/24 - The version 0.1.1 package ([smftools-0.1.1](https://pypi.org/project/smftools/)) is installable through pypi!
138
- The informatics module has been bumped to alpha-phase status. This module can deal with POD5s and unaligned BAMS from nanopore conversion and direct SMF experiments, as well as FASTQs from Illumina conversion SMF experiments. Primary output from this module is an AnnData object containing all relevant SMF data, which is compatible with all downstream smftools modules. The other modules are still in pre-alpha phase. Preprocessing, Tools, and Plotting modules should be promoted to alpha-phase within the next month or so.
139
-
140
- ### 08/30/24 - The version 0.1.0 package ([smftools-0.1.0](https://pypi.org/project/smftools/)) is installable through pypi!
141
- Currently, this package (smftools-0.1.0) is going through rapid improvement (dependency handling accross Linux and Mac OS, testing, documentation, debugging) and is still too early in development for widespread use. The underlying functionality was originally developed as a collection of scripts for single molecule footprinting (SMF) experiments in our lab, but is being packaged/developed to facilitate the expansion of SMF to any lab that is interested in performing these styles of experiments/analyses. The alpha-phase package is expected to be available within a couple months, so stay tuned!
110
+ The following CLI tools need to be installed and configured before using the informatics (smftools.inform) module of smftools, which is used by the smftools load CLI command:
111
+ 1) [Dorado](https://github.com/nanoporetech/dorado) -> Basecalling, alignment, demultiplexing. Required for Nanopore SMF experiments, but not Illumina SMF experiments.
112
+ 2) [Minimap2](https://github.com/lh3/minimap2) -> Aligner if not using dorado. Support for other aligners could eventually be added if needed.
113
+ 3) [Modkit](https://github.com/nanoporetech/modkit) -> Extracting read level methylation metrics from the MM/ML tags in BAM files. Only required for direct modification detection SMF protocols.
@@ -0,0 +1,181 @@
1
+ smftools/__init__.py,sha256=8jiFf9PlbEL0Cc4vCPnnHs0Z-McGLEmW-o8d4sS77lQ,600
2
+ smftools/_settings.py,sha256=Evw4Xu8RWt3YNglBjiHMdDA9LsS3xs4R3-lC-1GVxrw,382
3
+ smftools/_version.py,sha256=Xsa3ayOMVkhUWm4t06YeyHE0apjpZefxLH4ylp0CDtU,22
4
+ smftools/cli_entry.py,sha256=Q58mRi2dcVYMGPwMs_TmblGzRaHATozXLCEwYLR1TkQ,9684
5
+ smftools/constants.py,sha256=SWOJ76KTP2p3geyVkNQ8LB96NOmDDtjFEur2hSw7iyU,1289
6
+ smftools/logging_utils.py,sha256=jOptBgSW7NQcw7JTnw2-oWcN2qyrtfJkDpIZsfcU1Mk,1323
7
+ smftools/metadata.py,sha256=yGTMof2hAUR43QfgRSwK9mnOiTAznV3Usxzsvt185s4,14898
8
+ smftools/readwrite.py,sha256=GCCBAWXQezTtXMBr-2NeV-jJfdnl_yB_x5nuz7Bt11c,52413
9
+ smftools/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
+ smftools/cli/helpers.py,sha256=rPahev5NvuBoy9dWm51QHbAOLyOTApyUG0tWyY-21FM,1399
11
+ smftools/cli/hmm_adata.py,sha256=u0JsQuvnErQxvA4SXzLXXiEfBa4Q4vlVC3oJbYg2PDo,40636
12
+ smftools/cli/load_adata.py,sha256=y-vjuxnKzKhNDF9g0VwpDLsm9C03mp5ESOaRnPCI1M0,31518
13
+ smftools/cli/preprocess_adata.py,sha256=j5nnTAN_mR-gHT6huEGTnUZ4EfRuZjRyuIZrR05AnJ0,22596
14
+ smftools/cli/spatial_adata.py,sha256=_oI21L79nCl15LaXBQwk2W_Kda9aaR-Qvj5QDN2ccNw,31871
15
+ smftools/cli/archived/cli_flows.py,sha256=xRiFUThoAL3LX1xdXaHVg4LjyJI4uNpGsc9aQ_wVCto,4941
16
+ smftools/config/__init__.py,sha256=otyYipEb4ydJh9b9JDrtVl3AqqnZO77YPqDPskLfA2w,70
17
+ smftools/config/conversion.yaml,sha256=N7lUO7-yAaJR6VhxRGCRc-ceAi0cp5xNASSIsXl9KwI,1242
18
+ smftools/config/deaminase.yaml,sha256=JCE1nF39AX436-3RyvuZN24gdJfriDijNv5XNHrMT8I,1357
19
+ smftools/config/default.yaml,sha256=xXprGKW3XcOGjSP9zKyfA6kFruwKTGErP_trPMRpghE,13709
20
+ smftools/config/direct.yaml,sha256=Jw8Nj3QKQrCfJpVl8sGgCKdRvjk5cV66dzRlNfoDOzI,2269
21
+ smftools/config/discover_input_files.py,sha256=NcOqNYoXggLDieam8UMJAc2sWmoYOZ_Wqp2mApnlBfs,4015
22
+ smftools/config/experiment_config.py,sha256=3Z2tz46Lva_QgdFVPGhsVEpnE6GA13gB-IE8Bct3AUk,67215
23
+ smftools/datasets/F1_hybrid_NKG2A_enhander_promoter_GpC_conversion_SMF.h5ad.gz,sha256=q6wJtgFRDln0o20XNCx1qad3lwcdCoylqPN7wskTfI8,2926497
24
+ smftools/datasets/F1_sample_sheet.csv,sha256=9PodIIOXK2eamYPbC6DGnXdzgi9bRDovf296j1aM0ak,259
25
+ smftools/datasets/__init__.py,sha256=BLdygs3q834wGKymizLMsJCWZijm-m4n3dIiDWMlkdM,121
26
+ smftools/datasets/dCas9_m6A_invitro_kinetics.h5ad.gz,sha256=niOcVHaYY7h3XyvwSkN-V_NMBaRt2vTP5TrJO0CwMCs,8385050
27
+ smftools/datasets/datasets.py,sha256=-VOdONP-K_ftLDtLktRKbq3S6vSB4pzRQ6VYBxAy_4A,1074
28
+ smftools/hmm/HMM.py,sha256=5YTxzOMO2cgwLYvkdcdZs2C-lp_j-GbCAWyboCJSG2A,82249
29
+ smftools/hmm/__init__.py,sha256=RebxmC6Xf9QUEXWqY7AZi7hX0z7BAm3Yz3akf5jSsTU,382
30
+ smftools/hmm/call_hmm_peaks.py,sha256=uCq8UALn83zFsbPF5bIsjGAZEzNSOixRFYlcUUARAi8,13400
31
+ smftools/hmm/display_hmm.py,sha256=lREb_e8-Ho5SdbPttfmZGXrXQFLjs6MVXt3lKgjei4M,1189
32
+ smftools/hmm/hmm_readwrite.py,sha256=Kwh-MXI5jqqltPZ6uWQ5VYnoY9t0H39gBoOhdsq2nwI,497
33
+ smftools/hmm/nucleosome_hmm_refinement.py,sha256=9w-QNpg5OuvPmDDQOjb5b8nQf3D7X4Ar-jp0VSk724g,6846
34
+ smftools/hmm/archived/apply_hmm_batched.py,sha256=BBeJ8DiIuuMWzLwtDdk2DO2vvrfLCrVe4JtRYPFItIU,10648
35
+ smftools/hmm/archived/calculate_distances.py,sha256=KDWimQ6u-coyxCKrbTm42Fh_Alf_gURBZ0vfFaem848,644
36
+ smftools/hmm/archived/call_hmm_peaks.py,sha256=xpCmFLk7AoRHGDbebklwCz3aK4bQvy-bNqBeXFKkQxQ,5213
37
+ smftools/hmm/archived/train_hmm.py,sha256=srzRcB9LEmNuHyBM0R5Z0VEnxecifQt-MoaJhADxGT8,2477
38
+ smftools/informatics/__init__.py,sha256=PcMgCMfC6xKtT29cxTkMrDyfvhuZW2S6mF8fxb-GZpw,1288
39
+ smftools/informatics/bam_functions.py,sha256=Rnnv-WTJb1cUptj0Pv774yJfRUrVs473U2iySPSp2vw,37657
40
+ smftools/informatics/basecalling.py,sha256=aJ-8P6EHhkdaq-j37dRQy5EO7Z_j1pTMdwKfECtGU0c,3663
41
+ smftools/informatics/bed_functions.py,sha256=pf_dYOb3I7N09NbvkEKmLenARzu0ODrd8SAsKubWjF4,13941
42
+ smftools/informatics/binarize_converted_base_identities.py,sha256=KlpLjQyMr-bITaYr9t4PTZwkx9GjbHKQepJLaYUWexg,7813
43
+ smftools/informatics/complement_base_list.py,sha256=f9k7fsztpswxtikFURNi-xZjcl3zRp_PoRyTdX1uqlg,535
44
+ smftools/informatics/converted_BAM_to_adata.py,sha256=ssBmRVkwK-lZfgZ1MnSPq5p1yK6_jkZRVGC7La_dsMw,24209
45
+ smftools/informatics/fasta_functions.py,sha256=zvBf9idZqa0x3LHfwfGXUxspqLJOda_6E0qCgWDyr-g,11290
46
+ smftools/informatics/h5ad_functions.py,sha256=YCBMmXS7DAIKMLeE87PvQoObGXRrUyIED13j_SkNg78,12961
47
+ smftools/informatics/modkit_extract_to_adata.py,sha256=CZo_sUp7c3OSdQIkuCfH9iQ-1wah-BFgnt2Yr7v3K54,63210
48
+ smftools/informatics/modkit_functions.py,sha256=y1IbINUqy-XDKyQwPSIkAD0f-HBvr3IKIyjiS_I22IA,6067
49
+ smftools/informatics/ohe.py,sha256=HHluIuV2ouNdS-ZZvVp7lUXM5roqsPx8nJwPFO4wNmE,5961
50
+ smftools/informatics/pod5_functions.py,sha256=XfqSFMDTO_IouFePJKX_9nt9-lkcPLgJlzpW-tOk-nY,10246
51
+ smftools/informatics/run_multiqc.py,sha256=M67HhO5FIJl8qn3Qc9YUlnbk7kdDWyYVL0B9SenrqMo,1115
52
+ smftools/informatics/archived/bam_conversion.py,sha256=I8EzXjQixMmqx2oWnoNSH5NURBhfT-krbWHkoi_M964,3330
53
+ smftools/informatics/archived/bam_direct.py,sha256=jbEFtUIiUR8Wlp3po_sWkr19AUNS9WZjglojb9j28vo,3606
54
+ smftools/informatics/archived/basecall_pod5s.py,sha256=Ynmxscsxj6qp-zVY0RWodq513oDuHDaHnpqoepB3RUU,3930
55
+ smftools/informatics/archived/basecalls_to_adata.py,sha256=-Nag6lr_NAtU4t8jo0GSMdgIAIfmDge-5VEUPQbEatE,3692
56
+ smftools/informatics/archived/conversion_smf.py,sha256=QhlISVi3Z-XqFKyDG_CenLojovAt5-ZhuVe9hus36lg,7177
57
+ smftools/informatics/archived/deaminase_smf.py,sha256=mNeg1mIYYVLIiW8powEpz0CqrGRDsrmY5-aoIgwMGHs,7221
58
+ smftools/informatics/archived/direct_smf.py,sha256=ylPGFBvRLdxLHeDJjAwq98j8Q8_lfGK3k5JJnQxrwJw,7485
59
+ smftools/informatics/archived/fast5_to_pod5.py,sha256=TRG_FYYGCGWUPzZCt0ZqzB8gQv_HKvkssp9nTctWzXU,1398
60
+ smftools/informatics/archived/print_bam_query_seq.py,sha256=xjvz913GzUAqDuDOOjWYEuqBWCINTN234ze18lMjxgs,1004
61
+ smftools/informatics/archived/subsample_fasta_from_bed.py,sha256=7YTKhXg_mtP4KWpnD-TB4nuFEL4crOa9_d84IJKllyQ,1633
62
+ smftools/informatics/archived/subsample_pod5.py,sha256=zDw9tRcrFRmPI62xkcy9dh8IfsJcuYm7R-FVeBC_g3s,4701
63
+ smftools/informatics/archived/helpers/archived/__init__.py,sha256=DiiBerFJAxZeG5y0ScpJSaVBJ8b4XWdfEJCh8Q7k8jU,2783
64
+ smftools/informatics/archived/helpers/archived/align_and_sort_BAM.py,sha256=R12iefrBu1JyRhERRo-IBLM9uehQRyrldbgu7lQT3k4,5788
65
+ smftools/informatics/archived/helpers/archived/aligned_BAM_to_bed.py,sha256=N3NAOaoSt_M4V48vtTP_m_iF1tRuNIPS_uNJ3Y0IA4E,3391
66
+ smftools/informatics/archived/helpers/archived/bam_qc.py,sha256=r_NVoOnhDQp9sBOdLuqqSkR7rocSN0USOAcCfkBTtiQ,8482
67
+ smftools/informatics/archived/helpers/archived/bed_to_bigwig.py,sha256=Bg9wFsavUU9Ha57n_99vYlYpVcbDUz3tLtYJ7ZFVR9k,2986
68
+ smftools/informatics/archived/helpers/archived/canoncall.py,sha256=5WS6lwukc_xYTdPQy0OSj-WLbx0Rg70Cun1lCucY7w8,1741
69
+ smftools/informatics/archived/helpers/archived/concatenate_fastqs_to_bam.py,sha256=chc4yyrwuZVQewSDMFLHmphs6JovAIak4jvmGwUdQNQ,10237
70
+ smftools/informatics/archived/helpers/archived/converted_BAM_to_adata.py,sha256=sRmOtn0kNosLYfogqslDHg1Azk51l6nfNOLgQOnQjlA,14591
71
+ smftools/informatics/archived/helpers/archived/count_aligned_reads.py,sha256=ZF_kkzAf1RvM4PwDYhxD36UiuVuMM_MBvZgiXom1NQ0,2176
72
+ smftools/informatics/archived/helpers/archived/demux_and_index_BAM.py,sha256=KmU7nqGQ-MfDrp8h3txbToGn4h95Rkvg0WEiuext-vY,2000
73
+ smftools/informatics/archived/helpers/archived/extract_base_identities.py,sha256=CaFqNBjkDujYlyiUnOeRock1OQWs3CeiD3yTL96sjIs,3043
74
+ smftools/informatics/archived/helpers/archived/extract_mods.py,sha256=Mrs7mrLFgCTiRGfPFSyvJm6brq--LGzZrNDiFB-jynI,3895
75
+ smftools/informatics/archived/helpers/archived/extract_read_features_from_bam.py,sha256=SYAb4Q1HxiJzCx5bIz86MdH_TvVPsRAVodZD9082HGY,1491
76
+ smftools/informatics/archived/helpers/archived/extract_read_lengths_from_bed.py,sha256=Cw39wgp1eBTV45Wk1l0c9l-upBW5N2OcgyWXTAXln90,678
77
+ smftools/informatics/archived/helpers/archived/extract_readnames_from_BAM.py,sha256=3FxSNqbZ1VsOK2RfHrvevQTzhWATf5E8bZ5yVOqayvk,759
78
+ smftools/informatics/archived/helpers/archived/find_conversion_sites.py,sha256=JPlDipmzeCBkV_T6esGD5ptwmbQmk8gJMTh7NMaSYd4,2480
79
+ smftools/informatics/archived/helpers/archived/generate_converted_FASTA.py,sha256=Us6iH1cIhsXDnTvDxI-FEHB6ndbB30hd1ss-9dIoWVE,3819
80
+ smftools/informatics/archived/helpers/archived/get_chromosome_lengths.py,sha256=BEroXshYSpjf5wt_vrEAFiTJmSuf-kvD-Z1B_1gusME,1000
81
+ smftools/informatics/archived/helpers/archived/get_native_references.py,sha256=fRuyEm9UJkfd5DwHmFb1bxEtNvtSI1_BxGRmrCymGkw,981
82
+ smftools/informatics/archived/helpers/archived/index_fasta.py,sha256=w6xHFSaoXVk-YWZWftZ9Xv8rywZ_IuuIouLQ12KL3ro,779
83
+ smftools/informatics/archived/helpers/archived/informatics.py,sha256=gKb2ZJ_LcAeEXuQqn9e-QDF_sS4tMpMTr2vZlqa7n54,14572
84
+ smftools/informatics/archived/helpers/archived/load_adata.py,sha256=i3aYVqp_aFQFa2ZXazw16HdJ9ExE0LzhyLMXKxJGxnA,33711
85
+ smftools/informatics/archived/helpers/archived/make_modbed.py,sha256=Wh0UCSOL4fMZbWYK-3oGGHwJtqPurJ3Bl6wJWBaTXoM,923
86
+ smftools/informatics/archived/helpers/archived/modQC.py,sha256=pz2EscFgO-j-9dfNgNDseweXXqM5-a-Rj2abBLErLd0,1051
87
+ smftools/informatics/archived/helpers/archived/modcall.py,sha256=LVPrdMNVp2gyQTJ4BNp8NJNm89AueDjsKaY7Gqkluho,1777
88
+ smftools/informatics/archived/helpers/archived/ohe_batching.py,sha256=QVOiyl9fYHNIFWM23afYnQo0uaOjf1NR3ASKGVSrmuw,2975
89
+ smftools/informatics/archived/helpers/archived/ohe_layers_decode.py,sha256=gIgUC9L8TFLi-fTnjR4PRzXdUaH5D6WL2Hump6XOoy0,1042
90
+ smftools/informatics/archived/helpers/archived/one_hot_decode.py,sha256=3n4rzY8_aC9YKmgrftsguMsH7fUyQ-DbWmrOYF6la9s,906
91
+ smftools/informatics/archived/helpers/archived/one_hot_encode.py,sha256=5hHigA6-SZLK84WH_RHo06F_6aTg7S3TJgvSr8gxGX8,1968
92
+ smftools/informatics/archived/helpers/archived/plot_bed_histograms.py,sha256=zNfnn10toHtNtYKRhfHwiRCp8QeSMewNA7S-srrh5M8,10030
93
+ smftools/informatics/archived/helpers/archived/separate_bam_by_bc.py,sha256=pCLev0OQji1jBdVr25lI_gt9fsozSG8vh7TQkE_UHnY,1800
94
+ smftools/informatics/archived/helpers/archived/split_and_index_BAM.py,sha256=Q7I5qJ5JjW6mSKysfl9NdlFZ6LIy3C8G5rGmG7cn2eA,1224
95
+ smftools/machine_learning/__init__.py,sha256=4Ezt1FLkH1RcbIDUn3kv3EE6hTLR_u4Ot8rqVxB1thQ,193
96
+ smftools/machine_learning/data/__init__.py,sha256=xbfLE-gNjdgxvZ9LKTdvjAtbIHOcs2TR0Gz3YRFbo38,113
97
+ smftools/machine_learning/data/anndata_data_module.py,sha256=onEflCeAHHs9IYDpoue_2NgDFoMBmzfN-dD-gPNSs0Y,10743
98
+ smftools/machine_learning/data/preprocessing.py,sha256=ugujhNYEdoQSj2J3dU-49-DOI9sB8eFZcKKPe7xy9Ec,139
99
+ smftools/machine_learning/evaluation/__init__.py,sha256=UBNFTIVZWfQIPOx16tcvnnoFR5kK5a-HwwS5CaG5rYQ,123
100
+ smftools/machine_learning/evaluation/eval_utils.py,sha256=mvt2aiRjDEWgODoez0t9dx4f9RcxwPSx77n0XE2X-90,1000
101
+ smftools/machine_learning/evaluation/evaluators.py,sha256=vWDgOg8CcpTqfXdNidzDIxbRC15g_7F3Cz46wdR0QYc,8278
102
+ smftools/machine_learning/inference/__init__.py,sha256=qjRDR-MmnwaZLKH76vWW9Yy5P5g92Kz8LqswBZSRU8U,173
103
+ smftools/machine_learning/inference/inference_utils.py,sha256=zZjz-tYk8SsfGFtcVvWCI98bIi7V94hGyU6YBfs9X8Q,950
104
+ smftools/machine_learning/inference/lightning_inference.py,sha256=_yl4xFLlbxuBWl76y85pJOAX8vF7JW4NGzGcWAG2aXc,2113
105
+ smftools/machine_learning/inference/sklearn_inference.py,sha256=DsZA30s9DE6neO3QpkJ3oAlMBpWq240BQgQ2r6knb8s,1608
106
+ smftools/machine_learning/inference/sliding_window_inference.py,sha256=cc2frAMpcZx6lNnc0F8DdgXGuAhODWuIXyB8Ovo0vCQ,4429
107
+ smftools/machine_learning/models/__init__.py,sha256=YxevQ9kUkU-eU0NvgDfnYLbGryFmAEa6rVbgpzN9_Xk,443
108
+ smftools/machine_learning/models/base.py,sha256=oSUolrdzDoTvKOWmQ4e1HGMWoFEyw86_m9Ls7ZidHjw,9416
109
+ smftools/machine_learning/models/cnn.py,sha256=bJSJhWp67tHRIb-BRALKdPtoc2qtwUZedNX4M3r0jjw,4458
110
+ smftools/machine_learning/models/lightning_base.py,sha256=v8PwJ222jNoKw2fXAqimsoZb8Srme56IHQvosC5Da0g,14041
111
+ smftools/machine_learning/models/mlp.py,sha256=YM0JvU5408-sETuF-Xq07VCIR10DvzvT_q7JhA9NpaM,869
112
+ smftools/machine_learning/models/positional.py,sha256=LHtmCMVeYfbEFDMZCADOKQ_VWKpw4eaWV43rp_3CozY,655
113
+ smftools/machine_learning/models/rnn.py,sha256=3Q1NVdzW60JBtNJRHm2k4aI818u5or6gqYCZn-o9x3Y,707
114
+ smftools/machine_learning/models/sklearn_models.py,sha256=xxgwWrE5-f8xmaxBM4wZzm8Gc8wh38k2CLspv9vR8J0,10478
115
+ smftools/machine_learning/models/transformer.py,sha256=dc0viuNLdEyztqfdyz11mpfbAhb94hGl8dr9epZByJU,10833
116
+ smftools/machine_learning/models/wrappers.py,sha256=wLQ111UcqX4KCyIHVyCSJFtdlHMSJH1yTgLeFiPAODo,699
117
+ smftools/machine_learning/training/__init__.py,sha256=WMUuPDR7IXAAb8_OdPLbSPVfOzepSLTFU5Lf7V6-aR8,186
118
+ smftools/machine_learning/training/train_lightning_model.py,sha256=ETfrhOD7CEmYMz9GpCZX9pUeKvzrNmdLwDiDhQEDlzc,4167
119
+ smftools/machine_learning/training/train_sklearn_model.py,sha256=tjxX9FjVzSmKzHl-1fVGKhTLEycnKTBVJg59WE_6QfQ,3111
120
+ smftools/machine_learning/utils/__init__.py,sha256=U7ShlZeKr-6UyHnJappmj7z5_n3-DG_vZcF3Y-PZCFw,63
121
+ smftools/machine_learning/utils/device.py,sha256=aOMqr6TCEoafY2YqDLm4p7Gt4IcxuNc78FiSQfeCWf8,292
122
+ smftools/machine_learning/utils/grl.py,sha256=ObrQtnAGQv6iit1rXIFA_GkG3v9gh9brL4GfDIGOR0o,337
123
+ smftools/plotting/__init__.py,sha256=TL7pnSSe7PCgnHp-HJRG0X6JRh4pbMVu67__xoTyTno,927
124
+ smftools/plotting/autocorrelation_plotting.py,sha256=SfZBIu9ETYO5LVMwVRhxCNwnEfUJVszjP-3CDK9YkH8,30209
125
+ smftools/plotting/classifiers.py,sha256=IoYFklpv7DjrSFr4QWotSQlOMIJdiQkYC4BWuraS_og,16241
126
+ smftools/plotting/general_plotting.py,sha256=zaQ04MrU7-MwSYpEoL9is7dyXme3xKjcECnKwStUdDE,69266
127
+ smftools/plotting/hmm_plotting.py,sha256=vF0LTjWG6nWWfwh9tQLtOhF9hQEvy9dwObFdfSRgvyA,11427
128
+ smftools/plotting/position_stats.py,sha256=6boL2UWA-FrjCHHJ7RWtxWggzbOPycnXlaCTJMrTpIM,18863
129
+ smftools/plotting/qc_plotting.py,sha256=MYlvvdk-Gn75eMEqizqj9wN25IjaNqqWoP1c1gX8raE,10233
130
+ smftools/preprocessing/__init__.py,sha256=r3fENr6W1CGgtC1Cd_c2qYRZjh0exrLYGRDUGJVp9so,1639
131
+ smftools/preprocessing/append_base_context.py,sha256=Z18Izb9-gZ4_ifXOHFZqcmPOradjCiyJZMZ5oTDfiLQ,7102
132
+ smftools/preprocessing/append_binary_layer_by_base_context.py,sha256=7mFG7xjAPgm_60AcdCnnjJZK5gJe4VuLohopkrAHmvQ,7640
133
+ smftools/preprocessing/binarize.py,sha256=eDFLybKKIF2wcrtN3JWVjeGXSUayezxLhX76UllAhVc,888
134
+ smftools/preprocessing/binarize_on_Youden.py,sha256=JTHosTDy9-gJ0bPrHkGnz_Ao_AeE8IiutqFA6MksdM8,4887
135
+ smftools/preprocessing/binary_layers_to_ohe.py,sha256=aR9Th60oFa0lBrYwrhGqg53eLmgGsnXtGx2MrB80Z8E,1896
136
+ smftools/preprocessing/calculate_complexity_II.py,sha256=AztSgw5BRDc_XYZNhk-Z3uu4TFIAvtqMUyulm1PFqRk,10270
137
+ smftools/preprocessing/calculate_consensus.py,sha256=1_-ldkwQ3JT5Rns9thIfV-HJbSKFW2b1Auida96lhGE,2377
138
+ smftools/preprocessing/calculate_coverage.py,sha256=HZ8rtEmb-z6XCr-EvMfl4rc_9nbTJRztyEk8xUg7feE,2777
139
+ smftools/preprocessing/calculate_pairwise_differences.py,sha256=MmbjlVbvV0P5qDLfA2qEa05Ke00086k69UZx7cBaRrk,1763
140
+ smftools/preprocessing/calculate_pairwise_hamming_distances.py,sha256=86CzKTjpuJa_QEjkLVeOBCnMJWEmBYZcK6Ztzt70k_U,962
141
+ smftools/preprocessing/calculate_position_Youden.py,sha256=7p6mK2k-f4dP4VCr-UpCexiY5Q-AtOPQKVsVk5gUCwc,8913
142
+ smftools/preprocessing/calculate_read_length_stats.py,sha256=y2R5lU6ObRBCAhSHKLEZYpgm88woPd9d15NWVthIi_A,4790
143
+ smftools/preprocessing/calculate_read_modification_stats.py,sha256=L1X0LatpjPI5wA1j7MjFgukePYGo75DcgJCYPlhVAGM,5319
144
+ smftools/preprocessing/clean_NaN.py,sha256=hrPhbKfqDpSiXLXXJxvcmtwqFhOecJVC29Z7PMIxi5I,2163
145
+ smftools/preprocessing/filter_adata_by_nan_proportion.py,sha256=5V1PNJISYm92QtEGmS9XSqx456Ult8RY8LMBclNylno,1490
146
+ smftools/preprocessing/filter_reads_on_length_quality_mapping.py,sha256=LYO-tiCNImPGvVbqNmVy_KvmmOmG4Ln11BsAF_T9xK0,7982
147
+ smftools/preprocessing/filter_reads_on_modification_thresholds.py,sha256=kuqUUwdEOZBGCjPN9IrT1qyksyS2v5moijba2Exn-2I,21652
148
+ smftools/preprocessing/flag_duplicate_reads.py,sha256=DEL6rRaPTsjAgwjrtW5DBUUWJVwFoiKsPY5rZ2ElAyM,75538
149
+ smftools/preprocessing/invert_adata.py,sha256=-aiidr_PXSf8IIpC4PMRm2RlLAWi-dtZDpr0iSOY-PY,1367
150
+ smftools/preprocessing/load_sample_sheet.py,sha256=rzY76rCYVf3idu2ZRw4pEjVRBB5AyUkSYY-UzpmE_aw,2193
151
+ smftools/preprocessing/make_dirs.py,sha256=IOrvfPzC-1AK_G9dB8tthxDDZLWYy1OdfEaKoYDoC7Q,627
152
+ smftools/preprocessing/min_non_diagonal.py,sha256=KT0uNdnH0D7qOhe_Ce2oDIyGowOF4kJSZW1kShVfREE,713
153
+ smftools/preprocessing/recipes.py,sha256=pkVbVCdVWHE5P-CIGmlWTVkRMLFUL0d8XQi9jdjxdQw,7133
154
+ smftools/preprocessing/reindex_references_adata.py,sha256=9d7Lm1za0wztSaUVAMzbhVn-TCHeJXNLoLx3F6FNNJQ,3658
155
+ smftools/preprocessing/subsample_adata.py,sha256=G9tCpDw5mZ-W4oKgjZr_kXy9CGnnzVmchtQ8WLQYSc8,2525
156
+ smftools/preprocessing/archived/add_read_length_and_mapping_qc.py,sha256=zD_Kxw3DvyOypfuSMGv0ESyt-02w4XlAAMqQxb7yDNQ,5700
157
+ smftools/preprocessing/archived/calculate_complexity.py,sha256=hJu3XjlFoEa1xdij9ENCxUIfB_xjenSlzXua4NafVtc,3420
158
+ smftools/preprocessing/archived/mark_duplicates.py,sha256=kwfstcWb7KkqeNB321dB-NLe8yd9_hZsSmpL8pCVBQg,8747
159
+ smftools/preprocessing/archived/preprocessing.py,sha256=akR1TFBix50v3Ic1va_eg9uaJM6NNMnbqxDp0JchCgg,34531
160
+ smftools/preprocessing/archived/remove_duplicates.py,sha256=Erooi5_1VOUNfWpzddzmMNYMCl1U1jJryt7ZtMhabAs,699
161
+ smftools/schema/__init__.py,sha256=0chkz2Zc3UKSJO4m0MUemfs-WjGUSSghiuuFM28UvsY,293
162
+ smftools/schema/anndata_schema_v1.yaml,sha256=uNFTrsTLNoE3kgJgrcg-hM6iYtDRsu6SHwWCkbcgIuk,7746
163
+ smftools/tools/__init__.py,sha256=BVP42AJXiy7xu-VDzGStEdmE2_Zx6FLKsrwmli4TeRI,719
164
+ smftools/tools/calculate_umap.py,sha256=NtUNASqT3qNyQEh0DB4aar2-0EdU6-kSQt9uzI-FJF4,3500
165
+ smftools/tools/cluster_adata_on_methylation.py,sha256=tIzBI1FhH67aYevCzLBD18EHAQOEotKOLvLnnXVoTz8,7434
166
+ smftools/tools/general_tools.py,sha256=XO8em-clV4onfbYEH6JTfNj3svLQnwBZ1Tja7s8qsXg,3260
167
+ smftools/tools/position_stats.py,sha256=JBtMDVW39LgXjI7o29OVAlEzjUerXzoDp0R66z55rhk,27439
168
+ smftools/tools/read_stats.py,sha256=8rV2BXymdPuPihh0Ev-HqPT40lobyt5WExoYjbmrbcI,6534
169
+ smftools/tools/spatial_autocorrelation.py,sha256=euunec6Mmkm5iBDN7TM4q4NXLl9n8UP77-6GSGYCVOk,25473
170
+ smftools/tools/subset_adata.py,sha256=6xPf6hyKcYwg4L2n0iCnz-Pl84fS4jLgxmD47J-OEco,1012
171
+ smftools/tools/archived/apply_hmm.py,sha256=pJXCULay0zbmubrwql368y7yiHAZr2bJhuGx2QUuKnE,9321
172
+ smftools/tools/archived/classifiers.py,sha256=9bYlmVhRSXiDtbOot9_d_Gyvd1gDDSvWatUT_Di-MXs,42155
173
+ smftools/tools/archived/classify_methylated_features.py,sha256=Z0N2UKw3luD3CTQ8wcUvdnMY7w-8574OJbEcwzNsy88,2897
174
+ smftools/tools/archived/classify_non_methylated_features.py,sha256=IJERTozEs7IPL7K-VIjq2q2K36wRCW9iiNSYLAXasrA,3256
175
+ smftools/tools/archived/subset_adata_v1.py,sha256=3e3689017Utixt61sQiXEGS_FGmevROH6F7W2Lcrb_s,1325
176
+ smftools/tools/archived/subset_adata_v2.py,sha256=Lno9ORj_Dqg5tmkm2P3XYoIbNkul9bztsCIXG2e3fkI,2275
177
+ smftools-0.2.5.dist-info/METADATA,sha256=lYaQpGcNnCiVBfwMyIjZ0sm7m6c0k6h_YZay08M-oRw,6168
178
+ smftools-0.2.5.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
179
+ smftools-0.2.5.dist-info/entry_points.txt,sha256=q4hg4w-mKkI2leekM_-YZc5XRJzp96Mh1FcU3hac82g,52
180
+ smftools-0.2.5.dist-info/licenses/LICENSE,sha256=F8LwmL6vMPddaCt1z1S83Kh_OZv50alTlY7BvVx1RXw,1066
181
+ smftools-0.2.5.dist-info/RECORD,,
@@ -1,176 +0,0 @@
1
- smftools/__init__.py,sha256=aZlrZBVexf_nEnzQeZu7NU_Kp6OnxcYpLo1KPImi7sI,599
2
- smftools/_settings.py,sha256=Ed8lzKUA5ncq5ZRfSp0t6_rphEEjMxts6guttwTZP5Y,409
3
- smftools/_version.py,sha256=k2uKAAzDEmm1BIVWeztFlHrCh9fq64H6szFcsXW7tvs,21
4
- smftools/cli_entry.py,sha256=LvobMVtEb_jrLZScoWCB-OBjUMue9JQBXJZW1oMbHnw,14618
5
- smftools/readwrite.py,sha256=mbuCKj7LfEKp4bDBxxxMiaTddMwblwURpcCKpgmU6Sw,48678
6
- smftools/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- smftools/cli/helpers.py,sha256=tgjxUlOIhFGCLGD2ON7zlD45UPx93vENM82mM_BpLFk,1281
8
- smftools/cli/hmm_adata.py,sha256=2ria8u6cCBQnzX_GjUUO3wBVOd7a4m3Al-vzwk0OasQ,17728
9
- smftools/cli/load_adata.py,sha256=W4NgbM28wOzQHkLnZNILJyblRgee-O4oLnNZcyPDCXc,30486
10
- smftools/cli/preprocess_adata.py,sha256=g9aHQ1DSScb4zx8RfpCjcEmam6APWHiu8Ow0sza6D2Y,22203
11
- smftools/cli/spatial_adata.py,sha256=pp0KLK8d-MYjl_hF1ziDVKc6uOJGDDDbKNQELQcRUa8,28980
12
- smftools/cli/archived/cli_flows.py,sha256=xRiFUThoAL3LX1xdXaHVg4LjyJI4uNpGsc9aQ_wVCto,4941
13
- smftools/config/__init__.py,sha256=ObUnnR7aRSoD_uvpmsxA_BUFt4NOOfWNopDVCqjp7tg,69
14
- smftools/config/conversion.yaml,sha256=07dKEXykQeP5VoVxa4xst-tcbSX4B6ErqyqtWJ5RCKk,1177
15
- smftools/config/deaminase.yaml,sha256=okXdMFAghUAsDyx6P5Kru7ydF2bcbrhMPOaMpXlZPGM,1359
16
- smftools/config/default.yaml,sha256=cKUUxVkH42kkHQM82mNJC8bfcak6lY063AnIif5o-1g,13071
17
- smftools/config/direct.yaml,sha256=s30JbOTOOdIiBIefPSEi72YABHnfcCyFXj9WwZ7duJQ,2173
18
- smftools/config/discover_input_files.py,sha256=G9vyAmK_n_8Ur5dOnumevVLG3ydHchMy_JQrJdiuuz0,3892
19
- smftools/config/experiment_config.py,sha256=f7hVIc9ShUZk852Ypp6Dfelus8iKFHrSbThiyhpuQsE,63259
20
- smftools/datasets/F1_hybrid_NKG2A_enhander_promoter_GpC_conversion_SMF.h5ad.gz,sha256=q6wJtgFRDln0o20XNCx1qad3lwcdCoylqPN7wskTfI8,2926497
21
- smftools/datasets/F1_sample_sheet.csv,sha256=9PodIIOXK2eamYPbC6DGnXdzgi9bRDovf296j1aM0ak,259
22
- smftools/datasets/__init__.py,sha256=xkSTlPuakVYVCuRurif9BceNBDt6bsngJvvjI8757QI,142
23
- smftools/datasets/dCas9_m6A_invitro_kinetics.h5ad.gz,sha256=niOcVHaYY7h3XyvwSkN-V_NMBaRt2vTP5TrJO0CwMCs,8385050
24
- smftools/datasets/datasets.py,sha256=0y597Ntp707bOgDwN6O-JEt9yxgplj66p0aj6Zs_IB4,779
25
- smftools/hmm/HMM.py,sha256=Y7YB-45HoLN--JloajoLBgC0rIYmHuWHDfmKRXfFuFk,71458
26
- smftools/hmm/__init__.py,sha256=_-plMbL5xq8d0szNIYgUrgUwdb8oybuyTn6jned8eSU,382
27
- smftools/hmm/call_hmm_peaks.py,sha256=BMlwDh-_k8bzqRn4LSYuTk3dCcUoNYHp8eohvWYNn7A,14573
28
- smftools/hmm/display_hmm.py,sha256=3WuQCPvM3wPfzAdgbhfiBTd0g5mQdx9HTUdqAxs2aj4,825
29
- smftools/hmm/hmm_readwrite.py,sha256=DjJ3hunpBQ7N0GVvxL7-0QUas_SkA88LVgL72mVK2cI,359
30
- smftools/hmm/nucleosome_hmm_refinement.py,sha256=nQWimvse6dclcXhbU707rGbRVMKHM0mU_ZhH9g2yCMA,4641
31
- smftools/hmm/archived/apply_hmm_batched.py,sha256=BBeJ8DiIuuMWzLwtDdk2DO2vvrfLCrVe4JtRYPFItIU,10648
32
- smftools/hmm/archived/calculate_distances.py,sha256=KDWimQ6u-coyxCKrbTm42Fh_Alf_gURBZ0vfFaem848,644
33
- smftools/hmm/archived/call_hmm_peaks.py,sha256=T-3Ld8H4t3Mgg2whBTYP9s2QL7rY-9RIzVCgB6avKhE,4625
34
- smftools/hmm/archived/train_hmm.py,sha256=srzRcB9LEmNuHyBM0R5Z0VEnxecifQt-MoaJhADxGT8,2477
35
- smftools/informatics/__init__.py,sha256=vLvSrCtCVYRUCCNLW7fL3ltPr3h_w8FhT--V6el3ZkQ,1191
36
- smftools/informatics/bam_functions.py,sha256=SCtOQWgF7Nqbk7-22fAq9J8kRYrd2V5chmM0x1lLJh0,32261
37
- smftools/informatics/basecalling.py,sha256=jc39jneaa8Gt1azutHgBGWHqCoPeTVSGBu3kyQwP7xM,3460
38
- smftools/informatics/bed_functions.py,sha256=uETVxT5mRWDNn7t0OqhDi8kDiq7uDakeHB1L2JsP4PA,13377
39
- smftools/informatics/binarize_converted_base_identities.py,sha256=yOepGaNBGfZJEsMiLRwKauvsmaHn_JRrxaGp8LmKAXs,7778
40
- smftools/informatics/complement_base_list.py,sha256=k6EkLtxFoajaIufxw1p0pShJ2nPHyGLTbzZmIFFjB4o,532
41
- smftools/informatics/converted_BAM_to_adata.py,sha256=Y2kQNWly0WjjGN9El9zL1nLfjVxmPLWONvX5VNgZUh0,22554
42
- smftools/informatics/fasta_functions.py,sha256=5IfTkX_GIj5gRJB9PjL_WjyEktpBHwGsmS_nnO1ETjI,9790
43
- smftools/informatics/h5ad_functions.py,sha256=9zUKuARwjjt0J-i_kBqo2jxLtD6Gud1VxKT0pV-ACeA,7829
44
- smftools/informatics/modkit_extract_to_adata.py,sha256=TrgrL_IgfqzNJ9qZ_2EvF_B38_Syw8mP38Sl7v0Riwo,55278
45
- smftools/informatics/modkit_functions.py,sha256=lywjeqAJ7Cdd7k-0P3YaL_9cAZvEDTDLh91rIRcSMWE,5604
46
- smftools/informatics/ohe.py,sha256=MEmh3ps-ZSSyXuIrr5LMzQvCsDJRCYiy7JS-WD4TlYs,5805
47
- smftools/informatics/pod5_functions.py,sha256=vxwhD_d_iWpJydIpbf0uce7VGHm8sBnCwb7tLNpYBc8,9859
48
- smftools/informatics/run_multiqc.py,sha256=n6LvQuGQpLfsutVGmgvHfV0SV5PqTQ8wa_SeKOjRssM,1052
49
- smftools/informatics/archived/bam_conversion.py,sha256=I8EzXjQixMmqx2oWnoNSH5NURBhfT-krbWHkoi_M964,3330
50
- smftools/informatics/archived/bam_direct.py,sha256=jbEFtUIiUR8Wlp3po_sWkr19AUNS9WZjglojb9j28vo,3606
51
- smftools/informatics/archived/basecall_pod5s.py,sha256=Ynmxscsxj6qp-zVY0RWodq513oDuHDaHnpqoepB3RUU,3930
52
- smftools/informatics/archived/basecalls_to_adata.py,sha256=-Nag6lr_NAtU4t8jo0GSMdgIAIfmDge-5VEUPQbEatE,3692
53
- smftools/informatics/archived/conversion_smf.py,sha256=QhlISVi3Z-XqFKyDG_CenLojovAt5-ZhuVe9hus36lg,7177
54
- smftools/informatics/archived/deaminase_smf.py,sha256=mNeg1mIYYVLIiW8powEpz0CqrGRDsrmY5-aoIgwMGHs,7221
55
- smftools/informatics/archived/direct_smf.py,sha256=ylPGFBvRLdxLHeDJjAwq98j8Q8_lfGK3k5JJnQxrwJw,7485
56
- smftools/informatics/archived/fast5_to_pod5.py,sha256=TRG_FYYGCGWUPzZCt0ZqzB8gQv_HKvkssp9nTctWzXU,1398
57
- smftools/informatics/archived/print_bam_query_seq.py,sha256=8Z2ZJEOOlfWYUXiZGjteLWU4yTgvV8KQzEIBHUmamGM,838
58
- smftools/informatics/archived/subsample_fasta_from_bed.py,sha256=7YTKhXg_mtP4KWpnD-TB4nuFEL4crOa9_d84IJKllyQ,1633
59
- smftools/informatics/archived/subsample_pod5.py,sha256=zDw9tRcrFRmPI62xkcy9dh8IfsJcuYm7R-FVeBC_g3s,4701
60
- smftools/informatics/archived/helpers/archived/__init__.py,sha256=DiiBerFJAxZeG5y0ScpJSaVBJ8b4XWdfEJCh8Q7k8jU,2783
61
- smftools/informatics/archived/helpers/archived/align_and_sort_BAM.py,sha256=yaRfhQDh3HpsSTme6QnSqBgElCS0kv2G6TunhvR1weY,5493
62
- smftools/informatics/archived/helpers/archived/aligned_BAM_to_bed.py,sha256=N3NAOaoSt_M4V48vtTP_m_iF1tRuNIPS_uNJ3Y0IA4E,3391
63
- smftools/informatics/archived/helpers/archived/bam_qc.py,sha256=PWl3dViCHGOcjB4UKkxBFz34Gc0PXHVTHjpYVNckVH0,7975
64
- smftools/informatics/archived/helpers/archived/bed_to_bigwig.py,sha256=Bg9wFsavUU9Ha57n_99vYlYpVcbDUz3tLtYJ7ZFVR9k,2986
65
- smftools/informatics/archived/helpers/archived/canoncall.py,sha256=5WS6lwukc_xYTdPQy0OSj-WLbx0Rg70Cun1lCucY7w8,1741
66
- smftools/informatics/archived/helpers/archived/concatenate_fastqs_to_bam.py,sha256=6GTHXG1dfaC8rBin5NthG3xgyGqOsT6wIGxJVCmCq58,9774
67
- smftools/informatics/archived/helpers/archived/converted_BAM_to_adata.py,sha256=sRmOtn0kNosLYfogqslDHg1Azk51l6nfNOLgQOnQjlA,14591
68
- smftools/informatics/archived/helpers/archived/count_aligned_reads.py,sha256=ZF_kkzAf1RvM4PwDYhxD36UiuVuMM_MBvZgiXom1NQ0,2176
69
- smftools/informatics/archived/helpers/archived/demux_and_index_BAM.py,sha256=KmU7nqGQ-MfDrp8h3txbToGn4h95Rkvg0WEiuext-vY,2000
70
- smftools/informatics/archived/helpers/archived/extract_base_identities.py,sha256=CaFqNBjkDujYlyiUnOeRock1OQWs3CeiD3yTL96sjIs,3043
71
- smftools/informatics/archived/helpers/archived/extract_mods.py,sha256=Mrs7mrLFgCTiRGfPFSyvJm6brq--LGzZrNDiFB-jynI,3895
72
- smftools/informatics/archived/helpers/archived/extract_read_features_from_bam.py,sha256=SYAb4Q1HxiJzCx5bIz86MdH_TvVPsRAVodZD9082HGY,1491
73
- smftools/informatics/archived/helpers/archived/extract_read_lengths_from_bed.py,sha256=Cw39wgp1eBTV45Wk1l0c9l-upBW5N2OcgyWXTAXln90,678
74
- smftools/informatics/archived/helpers/archived/extract_readnames_from_BAM.py,sha256=3FxSNqbZ1VsOK2RfHrvevQTzhWATf5E8bZ5yVOqayvk,759
75
- smftools/informatics/archived/helpers/archived/find_conversion_sites.py,sha256=JPlDipmzeCBkV_T6esGD5ptwmbQmk8gJMTh7NMaSYd4,2480
76
- smftools/informatics/archived/helpers/archived/generate_converted_FASTA.py,sha256=Us6iH1cIhsXDnTvDxI-FEHB6ndbB30hd1ss-9dIoWVE,3819
77
- smftools/informatics/archived/helpers/archived/get_chromosome_lengths.py,sha256=BEroXshYSpjf5wt_vrEAFiTJmSuf-kvD-Z1B_1gusME,1000
78
- smftools/informatics/archived/helpers/archived/get_native_references.py,sha256=fRuyEm9UJkfd5DwHmFb1bxEtNvtSI1_BxGRmrCymGkw,981
79
- smftools/informatics/archived/helpers/archived/index_fasta.py,sha256=w6xHFSaoXVk-YWZWftZ9Xv8rywZ_IuuIouLQ12KL3ro,779
80
- smftools/informatics/archived/helpers/archived/informatics.py,sha256=gKb2ZJ_LcAeEXuQqn9e-QDF_sS4tMpMTr2vZlqa7n54,14572
81
- smftools/informatics/archived/helpers/archived/load_adata.py,sha256=DhvYYqO9VLsZqhL1WjN9sd-e3fgvdXGlgTP18z1h0L0,33654
82
- smftools/informatics/archived/helpers/archived/make_modbed.py,sha256=Wh0UCSOL4fMZbWYK-3oGGHwJtqPurJ3Bl6wJWBaTXoM,923
83
- smftools/informatics/archived/helpers/archived/modQC.py,sha256=pz2EscFgO-j-9dfNgNDseweXXqM5-a-Rj2abBLErLd0,1051
84
- smftools/informatics/archived/helpers/archived/modcall.py,sha256=LVPrdMNVp2gyQTJ4BNp8NJNm89AueDjsKaY7Gqkluho,1777
85
- smftools/informatics/archived/helpers/archived/ohe_batching.py,sha256=QVOiyl9fYHNIFWM23afYnQo0uaOjf1NR3ASKGVSrmuw,2975
86
- smftools/informatics/archived/helpers/archived/ohe_layers_decode.py,sha256=gIgUC9L8TFLi-fTnjR4PRzXdUaH5D6WL2Hump6XOoy0,1042
87
- smftools/informatics/archived/helpers/archived/one_hot_decode.py,sha256=3n4rzY8_aC9YKmgrftsguMsH7fUyQ-DbWmrOYF6la9s,906
88
- smftools/informatics/archived/helpers/archived/one_hot_encode.py,sha256=5hHigA6-SZLK84WH_RHo06F_6aTg7S3TJgvSr8gxGX8,1968
89
- smftools/informatics/archived/helpers/archived/plot_bed_histograms.py,sha256=78i0mYFuElTPGA2Dt1feO6Z4Grh1Nro3m-F8D5FRBOw,9914
90
- smftools/informatics/archived/helpers/archived/separate_bam_by_bc.py,sha256=pCLev0OQji1jBdVr25lI_gt9fsozSG8vh7TQkE_UHnY,1800
91
- smftools/informatics/archived/helpers/archived/split_and_index_BAM.py,sha256=Q7I5qJ5JjW6mSKysfl9NdlFZ6LIy3C8G5rGmG7cn2eA,1224
92
- smftools/machine_learning/__init__.py,sha256=cWyGN_QVcssqBr_VVr7xh2Inz0P7ylqUmBBcpMgsK0k,257
93
- smftools/machine_learning/data/__init__.py,sha256=xbfLE-gNjdgxvZ9LKTdvjAtbIHOcs2TR0Gz3YRFbo38,113
94
- smftools/machine_learning/data/anndata_data_module.py,sha256=ktrdMVMk5yhIUrnu-G_Xf3y7G-KP9PyhYZhobv8TCVg,10063
95
- smftools/machine_learning/data/preprocessing.py,sha256=dSs6Qs3wmlccFPZSpOc-uy1nlFSf68wWQKwF1iTqMok,137
96
- smftools/machine_learning/evaluation/__init__.py,sha256=KHvcC7bTYv-ThptAi6G8wD-hW5Iz1HPgMcQ3AewtK3c,122
97
- smftools/machine_learning/evaluation/eval_utils.py,sha256=t9WIevIJ6b6HqU6OYaNx7UBAa5TEIPFmZow6n_ZDZeY,1105
98
- smftools/machine_learning/evaluation/evaluators.py,sha256=KqYHqbVV2WOs0Yo4GIhLS_0h1oKY6nd1yi6piDWYQLg,8184
99
- smftools/machine_learning/inference/__init__.py,sha256=vWLQD-JNEKKNGuzDtx7vcE4czKKXEO6S-0Zp5-21fPs,172
100
- smftools/machine_learning/inference/inference_utils.py,sha256=aJuXvTgC8v4BOjLCgOU9vT3S2y1UGoZjq4mQpPswTQU,947
101
- smftools/machine_learning/inference/lightning_inference.py,sha256=34WVnPfpPDf4KM8ZN5MOsx4tYgsrUclkens6GXgB4Ek,2160
102
- smftools/machine_learning/inference/sklearn_inference.py,sha256=FomgQF5jFBfAj1-H2Q0_RPmvR9rDJsmUeaWOVRhbpTw,1612
103
- smftools/machine_learning/inference/sliding_window_inference.py,sha256=8zjQs2hGhj0Dww4gWljLVK0g002_U96dyIqQJiDdSDY,4426
104
- smftools/machine_learning/models/__init__.py,sha256=bMfPbQ5bDmn_kWv82virLuUhjb12Yow7t_j96afNbyA,421
105
- smftools/machine_learning/models/base.py,sha256=p3d77iyY8BVx0tYL0TjmOSnPNP1ZrKTzn_J05e2GF0A,9626
106
- smftools/machine_learning/models/cnn.py,sha256=KKZmJLQ6Bjm_HI8GULnafjz6mRy5BZ6Y0ZCgDSuS268,4465
107
- smftools/machine_learning/models/lightning_base.py,sha256=3nC3wajPIupFMtOq3YUf24_SHvDoW_9BIGyIvEwzN9w,13626
108
- smftools/machine_learning/models/mlp.py,sha256=Y2hc_qHj6vpM_mHpreFxBULn4MkR25oEA1LXu5sPA_w,820
109
- smftools/machine_learning/models/positional.py,sha256=EfTyYnY0pCB-aVJIWf-4DVNpyGlvx1q_09PzfrC-VlA,652
110
- smftools/machine_learning/models/rnn.py,sha256=uJnHDGpT2_l_HqHGsx33XGF3v3EYZPeOtSQ89uvhdpE,717
111
- smftools/machine_learning/models/sklearn_models.py,sha256=ssV-mR3rmcjycQEzKccRcbVaEjZp0zRNUL5-R6m1UKU,10402
112
- smftools/machine_learning/models/transformer.py,sha256=8YXS0vCcOWT-33h-8yeDfFM5ibPHQ-CMSEhGWzR4pm8,11039
113
- smftools/machine_learning/models/wrappers.py,sha256=HEY2A6-Bk6MtVZ9jOaPT8S1Qi0L98SyEg1nbKqYZoag,697
114
- smftools/machine_learning/training/__init__.py,sha256=teUmwpnmAl0oNFaqVrfoijEpxBjLwI5YtBwLHT3uXck,185
115
- smftools/machine_learning/training/train_lightning_model.py,sha256=usEBaQ4vNjfatefP5XDCXkywzgZ2D-YppGmT3-3gTGE,4070
116
- smftools/machine_learning/training/train_sklearn_model.py,sha256=m1k1Gsynpj6SJI64rl4B3cfXm1SliU0fwMAj1-bAAeE,3166
117
- smftools/machine_learning/utils/__init__.py,sha256=yOpzBc9AXbarSRfN8Ixh2Z1uWLGpgpjRR46h6E46_2w,62
118
- smftools/machine_learning/utils/device.py,sha256=GITrULOty2Fr96Bqt1wi1PaYl_oVgB5Z99Gfn5vQy4o,274
119
- smftools/machine_learning/utils/grl.py,sha256=BWBDp_kQBigrUzQpRbZzgpfr_WOcd2K2V3MQL-aAIc4,334
120
- smftools/plotting/__init__.py,sha256=7T3-hZFgTY0nfQgV4J6Vn9ogwkNMlY315kguZR7V1AI,866
121
- smftools/plotting/autocorrelation_plotting.py,sha256=cF9X3CgKiwzL79mgMUFO1tSqdybDoPN1COQQ567InCY,27455
122
- smftools/plotting/classifiers.py,sha256=8_zabh4NNB1_yVxLD22lfrfl5yfzbEoG3XWqlIqdtrQ,13786
123
- smftools/plotting/general_plotting.py,sha256=o4aPXm_2JRj69XyHINKSTAJGaw9VA-csDgX1pyirso0,63151
124
- smftools/plotting/hmm_plotting.py,sha256=3Eq82gty_0b8GkSMCQgUlbKfzR9h2fJ5rZkB8yYGX-M,10934
125
- smftools/plotting/position_stats.py,sha256=Ia15EuYq5r3Ckz3jVjYMHON6IHZboatAVqJdb2WrUA4,17415
126
- smftools/plotting/qc_plotting.py,sha256=q5Ri0q89udvNUFUNxHzgk9atvQYqUkqkS5-JFq9EqoI,10045
127
- smftools/preprocessing/__init__.py,sha256=mcmovdFq6jt1kWIe0sVW6MwCXs4tUVTy3Qak7RDts74,1644
128
- smftools/preprocessing/append_base_context.py,sha256=VnxKf8sI4uWale215FEFFoE2me6uJszXvswl-dFQmUY,6702
129
- smftools/preprocessing/append_binary_layer_by_base_context.py,sha256=qgjeDyfOghuqWZAzCjd4eE5riCWAgra6CIZ9UCyUgTs,6207
130
- smftools/preprocessing/binarize.py,sha256=6Vr7Z8zgtJ5rS_uPAx1n3EnQR670V33DlZ_95JmOeWc,484
131
- smftools/preprocessing/binarize_on_Youden.py,sha256=OwI0JwKBsSPVdPr61D31dR9XhnF0N4e5PnbboTpk8xI,1891
132
- smftools/preprocessing/binary_layers_to_ohe.py,sha256=Lxd8knelNTaUozfGMFNMlnrOb6uP28Laj3Ymw6cRHL0,1826
133
- smftools/preprocessing/calculate_complexity_II.py,sha256=oh5y0jbM1-k29ujRUfvXoL3ir4E6bVXLE9bWxlD5efc,9306
134
- smftools/preprocessing/calculate_consensus.py,sha256=6zRpRmb2xdfDu5hctZrReALRb7Pjn8sy8xJZTm3o0nU,2442
135
- smftools/preprocessing/calculate_coverage.py,sha256=L417_XWAadMH3vxVDGEEAqxIGOiV48nfzVzD7HYyhus,2199
136
- smftools/preprocessing/calculate_pairwise_differences.py,sha256=5zJbNNaFld5qgKRoPyplCmMHflbvAQ9eKWCXPXPpJ60,1774
137
- smftools/preprocessing/calculate_pairwise_hamming_distances.py,sha256=e5Mzyex7pT29H2PY014uU4Fi_eewbut1JkzC1ffBbCg,961
138
- smftools/preprocessing/calculate_position_Youden.py,sha256=JJLvU62zpBcvWm5QnsQ3FeRgIv5TMQbz5zTHa3z_Y1s,8342
139
- smftools/preprocessing/calculate_read_length_stats.py,sha256=gNNePwMqYZJidzGgT1ZkfSlvc5Y3I3bi5KNYpP6wQQc,4584
140
- smftools/preprocessing/calculate_read_modification_stats.py,sha256=hZzoEe1Acc1TQV3crkjyGZBWTMkMMcqXymJb3vJMHks,4784
141
- smftools/preprocessing/clean_NaN.py,sha256=IOcnN5YF05gpPQc3cc3IS83petCnhCpkYiyT6bXEyx0,1937
142
- smftools/preprocessing/filter_adata_by_nan_proportion.py,sha256=GZcvr2JCsthX8EMw34S9-W3fc6JElw6ka99Jy6f2JvA,1292
143
- smftools/preprocessing/filter_reads_on_length_quality_mapping.py,sha256=UhMXpM_qxbhTCorjpKAePRk1qQVls8DP6Z51aFVnr3k,7380
144
- smftools/preprocessing/filter_reads_on_modification_thresholds.py,sha256=LK3u0mIwD-T_qwqIH8v7BP1ZRL88HtRXPkDJwchsCjk,19363
145
- smftools/preprocessing/flag_duplicate_reads.py,sha256=8Z3sVQr8gmci3ZtYfQGDAHI7GpKGhzmAFHoZVyL6nK4,65581
146
- smftools/preprocessing/invert_adata.py,sha256=TmvwRGlkJKnMajOADAzpE_C2kYEtDVYDYtQKv3IthKs,1047
147
- smftools/preprocessing/load_sample_sheet.py,sha256=WXAKfIhbnptnkbIpI5hEe6p02HhpQ3eRX1EDGEEvH-8,1916
148
- smftools/preprocessing/make_dirs.py,sha256=lWHXpwC76MFM5sSme9i_WeYUaxutzybendokhny03ds,537
149
- smftools/preprocessing/min_non_diagonal.py,sha256=hx1asW8CEmLaIroZISW8EcAf_RnBEC_nofGD8QG0b1E,711
150
- smftools/preprocessing/recipes.py,sha256=cfKEpKW8TtQLe1CMdSHyPuIgKiWOPn7uP6uMIoRlnaQ,7063
151
- smftools/preprocessing/reindex_references_adata.py,sha256=4oViEcWWSi7bnX3Yyf-DdSZBSocvuiqr4LC-jDFHwu0,1137
152
- smftools/preprocessing/subsample_adata.py,sha256=ivJvJIOvEtyvAjqZ7cwEeVedm4QgJxCJEI7sFaTuI3w,2360
153
- smftools/preprocessing/archives/add_read_length_and_mapping_qc.py,sha256=zD_Kxw3DvyOypfuSMGv0ESyt-02w4XlAAMqQxb7yDNQ,5700
154
- smftools/preprocessing/archives/calculate_complexity.py,sha256=cXMpFrhkwkPipQo2GZGT5yFknMYUMt1t8gz0Cse1DrA,3288
155
- smftools/preprocessing/archives/mark_duplicates.py,sha256=kwfstcWb7KkqeNB321dB-NLe8yd9_hZsSmpL8pCVBQg,8747
156
- smftools/preprocessing/archives/preprocessing.py,sha256=4mLT09A7vwRZ78FHmuwtv38mH9TQ9qrZc_WjHRhhkIw,34379
157
- smftools/preprocessing/archives/remove_duplicates.py,sha256=Erooi5_1VOUNfWpzddzmMNYMCl1U1jJryt7ZtMhabAs,699
158
- smftools/tools/__init__.py,sha256=QV3asy5_lP9wcRzpNTfxGTCcpykkbNYvzxSMpFw4KXU,719
159
- smftools/tools/calculate_umap.py,sha256=2arbAQdFOtnWoPq22TWicyr6fLYZ5PTNeZv_jdwuk_I,2491
160
- smftools/tools/cluster_adata_on_methylation.py,sha256=UDC5lpW8fZ6O-16ETu-mbflLkNBKuIg7RIzQ9r7knvA,5760
161
- smftools/tools/general_tools.py,sha256=YbobB6Zllz6cUq50yolGH9Jr6uuAMvEI4m3hiJ6FmAI,2561
162
- smftools/tools/position_stats.py,sha256=Z7VW54wUVzH1RQ9xhP6KO7ewp-xeLybd07I5umV_aqM,24369
163
- smftools/tools/read_stats.py,sha256=w3Zaim6l__Kt8EPCJKXTlMgO51Iy2Milj6yUb88HXiI,6324
164
- smftools/tools/spatial_autocorrelation.py,sha256=uQkuPi2PJCj5lZzb33IWTL-e-p3J6PdMeM88rUFfQRw,21212
165
- smftools/tools/subset_adata.py,sha256=nBbtAxCNteZCUBmPnZ9swQNyU74XgWM8aJHHWg2AuL0,1025
166
- smftools/tools/archived/apply_hmm.py,sha256=pJXCULay0zbmubrwql368y7yiHAZr2bJhuGx2QUuKnE,9321
167
- smftools/tools/archived/classifiers.py,sha256=mwSTpWUXBPjmUuV5i_SMG1lIPpHSMCzsKhl8wTbm-Og,36903
168
- smftools/tools/archived/classify_methylated_features.py,sha256=Z0N2UKw3luD3CTQ8wcUvdnMY7w-8574OJbEcwzNsy88,2897
169
- smftools/tools/archived/classify_non_methylated_features.py,sha256=IJERTozEs7IPL7K-VIjq2q2K36wRCW9iiNSYLAXasrA,3256
170
- smftools/tools/archived/subset_adata_v1.py,sha256=qyU9iCal03edb5aUS3AZ2U4TlL3uQ42jGI9hX3QF7Fc,1047
171
- smftools/tools/archived/subset_adata_v2.py,sha256=OKZoUpvdURPtckIQxGTWmOI5jLa-_EU62Xs3LyyehnA,1880
172
- smftools-0.2.4.dist-info/METADATA,sha256=BVgWPtWTeDoNF6d1IOpvXyV0IE4fI5X_fLIs4nmVvJ4,9138
173
- smftools-0.2.4.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
174
- smftools-0.2.4.dist-info/entry_points.txt,sha256=q4hg4w-mKkI2leekM_-YZc5XRJzp96Mh1FcU3hac82g,52
175
- smftools-0.2.4.dist-info/licenses/LICENSE,sha256=F8LwmL6vMPddaCt1z1S83Kh_OZv50alTlY7BvVx1RXw,1066
176
- smftools-0.2.4.dist-info/RECORD,,