smftools 0.1.7__py3-none-any.whl → 0.2.3__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.
- smftools/__init__.py +7 -6
- smftools/_version.py +1 -1
- smftools/cli/cli_flows.py +94 -0
- smftools/cli/hmm_adata.py +338 -0
- smftools/cli/load_adata.py +577 -0
- smftools/cli/preprocess_adata.py +363 -0
- smftools/cli/spatial_adata.py +564 -0
- smftools/cli_entry.py +435 -0
- smftools/config/__init__.py +1 -0
- smftools/config/conversion.yaml +38 -0
- smftools/config/deaminase.yaml +61 -0
- smftools/config/default.yaml +264 -0
- smftools/config/direct.yaml +41 -0
- smftools/config/discover_input_files.py +115 -0
- smftools/config/experiment_config.py +1288 -0
- smftools/hmm/HMM.py +1576 -0
- smftools/hmm/__init__.py +20 -0
- smftools/{tools → hmm}/apply_hmm_batched.py +8 -7
- smftools/hmm/call_hmm_peaks.py +106 -0
- smftools/{tools → hmm}/display_hmm.py +3 -3
- smftools/{tools → hmm}/nucleosome_hmm_refinement.py +2 -2
- smftools/{tools → hmm}/train_hmm.py +1 -1
- smftools/informatics/__init__.py +13 -9
- smftools/informatics/archived/deaminase_smf.py +132 -0
- smftools/informatics/archived/fast5_to_pod5.py +43 -0
- smftools/informatics/archived/helpers/archived/__init__.py +71 -0
- smftools/informatics/archived/helpers/archived/align_and_sort_BAM.py +126 -0
- smftools/informatics/archived/helpers/archived/aligned_BAM_to_bed.py +87 -0
- smftools/informatics/archived/helpers/archived/bam_qc.py +213 -0
- smftools/informatics/archived/helpers/archived/bed_to_bigwig.py +90 -0
- smftools/informatics/archived/helpers/archived/concatenate_fastqs_to_bam.py +259 -0
- smftools/informatics/{helpers → archived/helpers/archived}/count_aligned_reads.py +2 -2
- smftools/informatics/{helpers → archived/helpers/archived}/demux_and_index_BAM.py +8 -10
- smftools/informatics/{helpers → archived/helpers/archived}/extract_base_identities.py +30 -4
- smftools/informatics/{helpers → archived/helpers/archived}/extract_mods.py +15 -13
- smftools/informatics/{helpers → archived/helpers/archived}/extract_read_features_from_bam.py +4 -2
- smftools/informatics/{helpers → archived/helpers/archived}/find_conversion_sites.py +5 -4
- smftools/informatics/{helpers → archived/helpers/archived}/generate_converted_FASTA.py +2 -0
- smftools/informatics/{helpers → archived/helpers/archived}/get_chromosome_lengths.py +9 -8
- smftools/informatics/archived/helpers/archived/index_fasta.py +24 -0
- smftools/informatics/{helpers → archived/helpers/archived}/make_modbed.py +1 -2
- smftools/informatics/{helpers → archived/helpers/archived}/modQC.py +2 -2
- smftools/informatics/archived/helpers/archived/plot_bed_histograms.py +250 -0
- smftools/informatics/{helpers → archived/helpers/archived}/separate_bam_by_bc.py +8 -7
- smftools/informatics/{helpers → archived/helpers/archived}/split_and_index_BAM.py +8 -12
- smftools/informatics/archived/subsample_fasta_from_bed.py +49 -0
- smftools/informatics/bam_functions.py +812 -0
- smftools/informatics/basecalling.py +67 -0
- smftools/informatics/bed_functions.py +366 -0
- smftools/informatics/binarize_converted_base_identities.py +172 -0
- smftools/informatics/{helpers/converted_BAM_to_adata_II.py → converted_BAM_to_adata.py} +198 -50
- smftools/informatics/fasta_functions.py +255 -0
- smftools/informatics/h5ad_functions.py +197 -0
- smftools/informatics/{helpers/modkit_extract_to_adata.py → modkit_extract_to_adata.py} +147 -61
- smftools/informatics/modkit_functions.py +129 -0
- smftools/informatics/ohe.py +160 -0
- smftools/informatics/pod5_functions.py +224 -0
- smftools/informatics/{helpers/run_multiqc.py → run_multiqc.py} +5 -2
- smftools/machine_learning/__init__.py +12 -0
- smftools/machine_learning/data/__init__.py +2 -0
- smftools/machine_learning/data/anndata_data_module.py +234 -0
- smftools/machine_learning/evaluation/__init__.py +2 -0
- smftools/machine_learning/evaluation/eval_utils.py +31 -0
- smftools/machine_learning/evaluation/evaluators.py +223 -0
- smftools/machine_learning/inference/__init__.py +3 -0
- smftools/machine_learning/inference/inference_utils.py +27 -0
- smftools/machine_learning/inference/lightning_inference.py +68 -0
- smftools/machine_learning/inference/sklearn_inference.py +55 -0
- smftools/machine_learning/inference/sliding_window_inference.py +114 -0
- smftools/machine_learning/models/base.py +295 -0
- smftools/machine_learning/models/cnn.py +138 -0
- smftools/machine_learning/models/lightning_base.py +345 -0
- smftools/machine_learning/models/mlp.py +26 -0
- smftools/{tools → machine_learning}/models/positional.py +3 -2
- smftools/{tools → machine_learning}/models/rnn.py +2 -1
- smftools/machine_learning/models/sklearn_models.py +273 -0
- smftools/machine_learning/models/transformer.py +303 -0
- smftools/machine_learning/training/__init__.py +2 -0
- smftools/machine_learning/training/train_lightning_model.py +135 -0
- smftools/machine_learning/training/train_sklearn_model.py +114 -0
- smftools/plotting/__init__.py +4 -1
- smftools/plotting/autocorrelation_plotting.py +609 -0
- smftools/plotting/general_plotting.py +1292 -140
- smftools/plotting/hmm_plotting.py +260 -0
- smftools/plotting/qc_plotting.py +270 -0
- smftools/preprocessing/__init__.py +15 -8
- smftools/preprocessing/add_read_length_and_mapping_qc.py +129 -0
- smftools/preprocessing/append_base_context.py +122 -0
- smftools/preprocessing/append_binary_layer_by_base_context.py +143 -0
- smftools/preprocessing/binarize.py +17 -0
- smftools/preprocessing/binarize_on_Youden.py +2 -2
- smftools/preprocessing/calculate_complexity_II.py +248 -0
- smftools/preprocessing/calculate_coverage.py +10 -1
- smftools/preprocessing/calculate_position_Youden.py +1 -1
- smftools/preprocessing/calculate_read_modification_stats.py +101 -0
- smftools/preprocessing/clean_NaN.py +17 -1
- smftools/preprocessing/filter_reads_on_length_quality_mapping.py +158 -0
- smftools/preprocessing/filter_reads_on_modification_thresholds.py +352 -0
- smftools/preprocessing/flag_duplicate_reads.py +1326 -124
- smftools/preprocessing/invert_adata.py +12 -5
- smftools/preprocessing/load_sample_sheet.py +19 -4
- smftools/readwrite.py +1021 -89
- smftools/tools/__init__.py +3 -32
- smftools/tools/calculate_umap.py +5 -5
- smftools/tools/general_tools.py +3 -3
- smftools/tools/position_stats.py +468 -106
- smftools/tools/read_stats.py +115 -1
- smftools/tools/spatial_autocorrelation.py +562 -0
- {smftools-0.1.7.dist-info → smftools-0.2.3.dist-info}/METADATA +14 -9
- smftools-0.2.3.dist-info/RECORD +173 -0
- smftools-0.2.3.dist-info/entry_points.txt +2 -0
- smftools/informatics/fast5_to_pod5.py +0 -21
- smftools/informatics/helpers/LoadExperimentConfig.py +0 -75
- smftools/informatics/helpers/__init__.py +0 -74
- smftools/informatics/helpers/align_and_sort_BAM.py +0 -59
- smftools/informatics/helpers/aligned_BAM_to_bed.py +0 -74
- smftools/informatics/helpers/bam_qc.py +0 -66
- smftools/informatics/helpers/bed_to_bigwig.py +0 -39
- smftools/informatics/helpers/binarize_converted_base_identities.py +0 -79
- smftools/informatics/helpers/concatenate_fastqs_to_bam.py +0 -55
- smftools/informatics/helpers/index_fasta.py +0 -12
- smftools/informatics/helpers/make_dirs.py +0 -21
- smftools/informatics/helpers/plot_read_length_and_coverage_histograms.py +0 -53
- smftools/informatics/load_adata.py +0 -182
- smftools/informatics/readwrite.py +0 -106
- smftools/informatics/subsample_fasta_from_bed.py +0 -47
- smftools/preprocessing/append_C_context.py +0 -82
- smftools/preprocessing/calculate_converted_read_methylation_stats.py +0 -94
- smftools/preprocessing/filter_converted_reads_on_methylation.py +0 -44
- smftools/preprocessing/filter_reads_on_length.py +0 -51
- smftools/tools/call_hmm_peaks.py +0 -105
- smftools/tools/data/__init__.py +0 -2
- smftools/tools/data/anndata_data_module.py +0 -90
- smftools/tools/inference/__init__.py +0 -1
- smftools/tools/inference/lightning_inference.py +0 -41
- smftools/tools/models/base.py +0 -14
- smftools/tools/models/cnn.py +0 -34
- smftools/tools/models/lightning_base.py +0 -41
- smftools/tools/models/mlp.py +0 -17
- smftools/tools/models/sklearn_models.py +0 -40
- smftools/tools/models/transformer.py +0 -133
- smftools/tools/training/__init__.py +0 -1
- smftools/tools/training/train_lightning_model.py +0 -47
- smftools-0.1.7.dist-info/RECORD +0 -136
- /smftools/{tools/evaluation → cli}/__init__.py +0 -0
- /smftools/{tools → hmm}/calculate_distances.py +0 -0
- /smftools/{tools → hmm}/hmm_readwrite.py +0 -0
- /smftools/informatics/{basecall_pod5s.py → archived/basecall_pod5s.py} +0 -0
- /smftools/informatics/{conversion_smf.py → archived/conversion_smf.py} +0 -0
- /smftools/informatics/{direct_smf.py → archived/direct_smf.py} +0 -0
- /smftools/informatics/{helpers → archived/helpers/archived}/canoncall.py +0 -0
- /smftools/informatics/{helpers → archived/helpers/archived}/converted_BAM_to_adata.py +0 -0
- /smftools/informatics/{helpers → archived/helpers/archived}/extract_read_lengths_from_bed.py +0 -0
- /smftools/informatics/{helpers → archived/helpers/archived}/extract_readnames_from_BAM.py +0 -0
- /smftools/informatics/{helpers → archived/helpers/archived}/get_native_references.py +0 -0
- /smftools/informatics/{helpers → archived/helpers}/archived/informatics.py +0 -0
- /smftools/informatics/{helpers → archived/helpers}/archived/load_adata.py +0 -0
- /smftools/informatics/{helpers → archived/helpers/archived}/modcall.py +0 -0
- /smftools/informatics/{helpers → archived/helpers/archived}/ohe_batching.py +0 -0
- /smftools/informatics/{helpers → archived/helpers/archived}/ohe_layers_decode.py +0 -0
- /smftools/informatics/{helpers → archived/helpers/archived}/one_hot_decode.py +0 -0
- /smftools/informatics/{helpers → archived/helpers/archived}/one_hot_encode.py +0 -0
- /smftools/informatics/{subsample_pod5.py → archived/subsample_pod5.py} +0 -0
- /smftools/informatics/{helpers/complement_base_list.py → complement_base_list.py} +0 -0
- /smftools/{tools → machine_learning}/data/preprocessing.py +0 -0
- /smftools/{tools → machine_learning}/models/__init__.py +0 -0
- /smftools/{tools → machine_learning}/models/wrappers.py +0 -0
- /smftools/{tools → machine_learning}/utils/__init__.py +0 -0
- /smftools/{tools → machine_learning}/utils/device.py +0 -0
- /smftools/{tools → machine_learning}/utils/grl.py +0 -0
- /smftools/tools/{apply_hmm.py → archived/apply_hmm.py} +0 -0
- /smftools/tools/{classifiers.py → archived/classifiers.py} +0 -0
- {smftools-0.1.7.dist-info → smftools-0.2.3.dist-info}/WHEEL +0 -0
- {smftools-0.1.7.dist-info → smftools-0.2.3.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
from sklearn.ensemble import RandomForestClassifier
|
|
2
|
-
from sklearn.naive_bayes import GaussianNB
|
|
3
|
-
from sklearn.metrics import (
|
|
4
|
-
roc_curve, precision_recall_curve, auc, f1_score, confusion_matrix
|
|
5
|
-
)
|
|
6
|
-
from sklearn.utils.class_weight import compute_class_weight
|
|
7
|
-
|
|
8
|
-
import numpy as np
|
|
9
|
-
|
|
10
|
-
class SklearnModelWrapper:
|
|
11
|
-
def __init__(self, model):
|
|
12
|
-
self.model = model
|
|
13
|
-
|
|
14
|
-
def fit(self, X_train, y_train):
|
|
15
|
-
self.model.fit(X_train, y_train)
|
|
16
|
-
|
|
17
|
-
def predict(self, X):
|
|
18
|
-
return self.model.predict(X)
|
|
19
|
-
|
|
20
|
-
def predict_proba(self, X):
|
|
21
|
-
return self.model.predict_proba(X)
|
|
22
|
-
|
|
23
|
-
def evaluate(self, X_test, y_test):
|
|
24
|
-
probs = self.predict_proba(X_test)[:, 1]
|
|
25
|
-
preds = self.predict(X_test)
|
|
26
|
-
|
|
27
|
-
fpr, tpr, _ = roc_curve(y_test, probs)
|
|
28
|
-
precision, recall, _ = precision_recall_curve(y_test, probs)
|
|
29
|
-
f1 = f1_score(y_test, preds)
|
|
30
|
-
auc_score = auc(fpr, tpr)
|
|
31
|
-
pr_auc = auc(recall, precision)
|
|
32
|
-
cm = confusion_matrix(y_test, preds)
|
|
33
|
-
pos_freq = np.mean(y_test == 1)
|
|
34
|
-
pr_auc_norm = pr_auc / pos_freq
|
|
35
|
-
|
|
36
|
-
return {
|
|
37
|
-
"fpr": fpr, "tpr": tpr, "precision": precision, "recall": recall,
|
|
38
|
-
"f1": f1, "auc": auc_score, "pr_auc": pr_auc,
|
|
39
|
-
"pr_auc_norm": pr_auc_norm, "confusion_matrix": cm
|
|
40
|
-
}
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import torch
|
|
2
|
-
import torch.nn as nn
|
|
3
|
-
from .base import BaseTorchModel
|
|
4
|
-
from .positional import PositionalEncoding
|
|
5
|
-
from ..utils.grl import grad_reverse
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
class BaseTransformer(BaseTorchModel):
|
|
9
|
-
def __init__(self, input_dim, model_dim, num_heads=4, num_layers=2, seq_len=None, use_learnable_pos=False, **kwargs):
|
|
10
|
-
super().__init__(**kwargs)
|
|
11
|
-
# Input FC layer to map D_input to D_model
|
|
12
|
-
self.input_fc = nn.Linear(input_dim, model_dim)
|
|
13
|
-
|
|
14
|
-
if use_learnable_pos:
|
|
15
|
-
assert seq_len is not None, "Must provide seq_len if use_learnable_pos=True"
|
|
16
|
-
self.pos_embed = nn.Parameter(torch.randn(seq_len, model_dim)) # (S, D)
|
|
17
|
-
self.pos_encoder = None
|
|
18
|
-
else:
|
|
19
|
-
self.pos_encoder = PositionalEncoding(model_dim)
|
|
20
|
-
self.pos_embed = None
|
|
21
|
-
|
|
22
|
-
# Specify the transformer encoder structure
|
|
23
|
-
encoder_layer = nn.TransformerEncoderLayer(d_model=model_dim, nhead=num_heads, batch_first=False)
|
|
24
|
-
# Stack the transformer encoder layers
|
|
25
|
-
self.transformer = nn.TransformerEncoder(encoder_layer, num_layers=num_layers)
|
|
26
|
-
|
|
27
|
-
def encode(self, x, mask=None):
|
|
28
|
-
"""
|
|
29
|
-
x: (B, S, D_input)
|
|
30
|
-
mask: (B, S) optional
|
|
31
|
-
"""
|
|
32
|
-
x = self.input_fc(x) # (B, S, D_model)
|
|
33
|
-
if self.pos_embed is not None:
|
|
34
|
-
x = x + self.pos_embed.unsqueeze(0).to(x.device) # (B, S, D_model)
|
|
35
|
-
elif self.pos_encoder is not None:
|
|
36
|
-
x = self.pos_encoder(x) # (B, S, D_model)
|
|
37
|
-
if mask is not None:
|
|
38
|
-
x = x * mask.unsqueeze(-1) # (B, S, D_model)
|
|
39
|
-
x = x.permute(1, 0, 2) # (S, B, D_model)
|
|
40
|
-
encoded = self.transformer(x) # (S, B, D_model)
|
|
41
|
-
return encoded.permute(1, 0, 2) # (B, S, D_model)
|
|
42
|
-
|
|
43
|
-
class TransformerClassifier(BaseTransformer):
|
|
44
|
-
def __init__(self, input_dim, model_dim, num_classes, num_heads=4, num_layers=2, **kwargs):
|
|
45
|
-
super().__init__(input_dim, model_dim, num_heads, num_layers, **kwargs)
|
|
46
|
-
# Classification head
|
|
47
|
-
self.cls_head = nn.Linear(model_dim, num_classes)
|
|
48
|
-
|
|
49
|
-
def forward(self, x):
|
|
50
|
-
"""
|
|
51
|
-
x: (batch, seq_len, input_dim)
|
|
52
|
-
"""
|
|
53
|
-
encoded = self.encode(x) # -> (B, S, D_model)
|
|
54
|
-
pooled = encoded.mean(dim=1) # -> (B, D_model)
|
|
55
|
-
return self.cls_head(pooled) # -> (B, C)
|
|
56
|
-
|
|
57
|
-
class DANNTransformerClassifier(TransformerClassifier):
|
|
58
|
-
def __init__(self, input_dim, model_dim, num_classes, n_domains, **kwargs):
|
|
59
|
-
super().__init__(input_dim, model_dim, num_classes, **kwargs)
|
|
60
|
-
self.domain_classifier = nn.Sequential(
|
|
61
|
-
nn.Linear(model_dim, 128),
|
|
62
|
-
nn.ReLU(),
|
|
63
|
-
nn.Linear(128, n_domains)
|
|
64
|
-
)
|
|
65
|
-
|
|
66
|
-
def forward(self, x, alpha=1.0):
|
|
67
|
-
encoded = self.encode(x) # (B, S, D_model)
|
|
68
|
-
pooled = encoded.mean(dim=1) # (B, D_model)
|
|
69
|
-
|
|
70
|
-
class_logits = self.cls_head(pooled)
|
|
71
|
-
domain_logits = self.domain_classifier(grad_reverse(pooled, alpha))
|
|
72
|
-
|
|
73
|
-
return class_logits, domain_logits
|
|
74
|
-
|
|
75
|
-
class MaskedTransformerPretrainer(BaseTransformer):
|
|
76
|
-
def __init__(self, input_dim, model_dim, num_heads=4, num_layers=2, **kwargs):
|
|
77
|
-
super().__init__(input_dim, model_dim, num_heads, num_layers, **kwargs)
|
|
78
|
-
self.decoder = nn.Linear(model_dim, input_dim)
|
|
79
|
-
|
|
80
|
-
def forward(self, x, mask):
|
|
81
|
-
"""
|
|
82
|
-
x: (batch, seq_len, input_dim)
|
|
83
|
-
mask: (batch, seq_len) optional
|
|
84
|
-
"""
|
|
85
|
-
if x.dim() == 2:
|
|
86
|
-
x = x.unsqueeze(-1)
|
|
87
|
-
encoded = self.encode(x, mask=mask) # -> (B, S, D_model)
|
|
88
|
-
return self.decoder(encoded) # -> (B, D_input)
|
|
89
|
-
|
|
90
|
-
class DANNTransformer(BaseTransformer):
|
|
91
|
-
"""
|
|
92
|
-
"""
|
|
93
|
-
def __init__(self, seq_len, model_dim, n_heads, n_layers, n_domains):
|
|
94
|
-
super().__init__(
|
|
95
|
-
input_dim=1, # 1D scalar input per token
|
|
96
|
-
model_dim=model_dim,
|
|
97
|
-
num_heads=n_heads,
|
|
98
|
-
num_layers=n_layers,
|
|
99
|
-
seq_len=seq_len,
|
|
100
|
-
use_learnable_pos=True # enables learnable pos_embed in base
|
|
101
|
-
)
|
|
102
|
-
|
|
103
|
-
# Reconstruction head
|
|
104
|
-
self.recon_head = nn.Linear(model_dim, 1)
|
|
105
|
-
|
|
106
|
-
# Domain classification head
|
|
107
|
-
self.domain_classifier = nn.Sequential(
|
|
108
|
-
nn.Linear(model_dim, 128),
|
|
109
|
-
nn.ReLU(),
|
|
110
|
-
nn.Linear(128, n_domains)
|
|
111
|
-
)
|
|
112
|
-
|
|
113
|
-
def forward(self, x, alpha=1.0):
|
|
114
|
-
"""
|
|
115
|
-
x: Tensor of shape (B, S) or (B, S, 1)
|
|
116
|
-
alpha: GRL coefficient (float)
|
|
117
|
-
"""
|
|
118
|
-
if x.dim() == 2:
|
|
119
|
-
x = x.unsqueeze(-1) # (B, S, 1)
|
|
120
|
-
|
|
121
|
-
# Encode sequence
|
|
122
|
-
h = self.encode(x) # (B, S, D_model)
|
|
123
|
-
|
|
124
|
-
# Head 1: Reconstruction
|
|
125
|
-
recon = self.recon_head(h).squeeze(-1) # (B, S)
|
|
126
|
-
|
|
127
|
-
# Head 2: Domain classification via GRL
|
|
128
|
-
pooled = h.mean(dim=1) # (B, D_model)
|
|
129
|
-
rev = grad_reverse(pooled, alpha)
|
|
130
|
-
domain_logits = self.domain_classifier(rev) # (B, n_batches)
|
|
131
|
-
|
|
132
|
-
return recon, domain_logits
|
|
133
|
-
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
from .train_lightning_model import train_lightning_model
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import torch
|
|
2
|
-
from pytorch_lightning import Trainer
|
|
3
|
-
from pytorch_lightning.callbacks import EarlyStopping, ModelCheckpoint
|
|
4
|
-
|
|
5
|
-
def train_lightning_model(
|
|
6
|
-
model,
|
|
7
|
-
datamodule,
|
|
8
|
-
max_epochs=20,
|
|
9
|
-
patience=5,
|
|
10
|
-
monitor_metric="val_loss",
|
|
11
|
-
checkpoint_path=None,
|
|
12
|
-
):
|
|
13
|
-
# Device logic
|
|
14
|
-
if torch.cuda.is_available():
|
|
15
|
-
accelerator = "gpu"
|
|
16
|
-
devices = 1
|
|
17
|
-
elif torch.backends.mps.is_available():
|
|
18
|
-
accelerator = "mps"
|
|
19
|
-
devices = 1
|
|
20
|
-
else:
|
|
21
|
-
accelerator = "cpu"
|
|
22
|
-
devices = 1
|
|
23
|
-
|
|
24
|
-
# Callbacks
|
|
25
|
-
callbacks = [
|
|
26
|
-
EarlyStopping(monitor=monitor_metric, patience=patience, mode="min"),
|
|
27
|
-
]
|
|
28
|
-
if checkpoint_path:
|
|
29
|
-
callbacks.append(ModelCheckpoint(
|
|
30
|
-
dirpath=checkpoint_path,
|
|
31
|
-
filename="{epoch}-{val_loss:.4f}",
|
|
32
|
-
monitor=monitor_metric,
|
|
33
|
-
save_top_k=1,
|
|
34
|
-
mode="min",
|
|
35
|
-
))
|
|
36
|
-
|
|
37
|
-
# Trainer setup
|
|
38
|
-
trainer = Trainer(
|
|
39
|
-
max_epochs=max_epochs,
|
|
40
|
-
callbacks=callbacks,
|
|
41
|
-
accelerator=accelerator,
|
|
42
|
-
devices=devices,
|
|
43
|
-
log_every_n_steps=10,
|
|
44
|
-
)
|
|
45
|
-
trainer.fit(model, datamodule=datamodule)
|
|
46
|
-
|
|
47
|
-
return trainer
|
smftools-0.1.7.dist-info/RECORD
DELETED
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
smftools/__init__.py,sha256=0Llj2kZuzB0PvwcQV5RjvMC0KgFW6F__eceV2eYR4TU,551
|
|
2
|
-
smftools/_settings.py,sha256=Ed8lzKUA5ncq5ZRfSp0t6_rphEEjMxts6guttwTZP5Y,409
|
|
3
|
-
smftools/_version.py,sha256=GmypIHlw9-BaSEaoucCIwm0ut1DUut0hUvsyTCr17qk,21
|
|
4
|
-
smftools/readwrite.py,sha256=Y-6ehzoEMUIBWp3WQtyX2Vhe9aHwY1tsoNsVApRJRy4,7303
|
|
5
|
-
smftools/datasets/F1_hybrid_NKG2A_enhander_promoter_GpC_conversion_SMF.h5ad.gz,sha256=q6wJtgFRDln0o20XNCx1qad3lwcdCoylqPN7wskTfI8,2926497
|
|
6
|
-
smftools/datasets/F1_sample_sheet.csv,sha256=9PodIIOXK2eamYPbC6DGnXdzgi9bRDovf296j1aM0ak,259
|
|
7
|
-
smftools/datasets/__init__.py,sha256=xkSTlPuakVYVCuRurif9BceNBDt6bsngJvvjI8757QI,142
|
|
8
|
-
smftools/datasets/dCas9_m6A_invitro_kinetics.h5ad.gz,sha256=niOcVHaYY7h3XyvwSkN-V_NMBaRt2vTP5TrJO0CwMCs,8385050
|
|
9
|
-
smftools/datasets/datasets.py,sha256=0y597Ntp707bOgDwN6O-JEt9yxgplj66p0aj6Zs_IB4,779
|
|
10
|
-
smftools/informatics/__init__.py,sha256=Iz5Jyzln5wKRJ2yu4AWbUx0sMavpMy8XZtGOaLECVmE,391
|
|
11
|
-
smftools/informatics/basecall_pod5s.py,sha256=Ynmxscsxj6qp-zVY0RWodq513oDuHDaHnpqoepB3RUU,3930
|
|
12
|
-
smftools/informatics/conversion_smf.py,sha256=QhlISVi3Z-XqFKyDG_CenLojovAt5-ZhuVe9hus36lg,7177
|
|
13
|
-
smftools/informatics/direct_smf.py,sha256=ylPGFBvRLdxLHeDJjAwq98j8Q8_lfGK3k5JJnQxrwJw,7485
|
|
14
|
-
smftools/informatics/fast5_to_pod5.py,sha256=xfdZU3QluaAcR-q2uBRz8hcBwYt73nCnrFeahvi0OKQ,704
|
|
15
|
-
smftools/informatics/load_adata.py,sha256=90eseT30qkKc9TCwBQ6UvoLbR7_oQ9foLniSxv-x8Q0,10563
|
|
16
|
-
smftools/informatics/readwrite.py,sha256=DgVisHYdkjzaO7suPbUvluImeTc3jqGDlioNveHUxPc,4158
|
|
17
|
-
smftools/informatics/subsample_fasta_from_bed.py,sha256=YqYV09rvEQdeiS5hTTrKa8xYmJfeM3Vk-UUqwpw0qBk,1983
|
|
18
|
-
smftools/informatics/subsample_pod5.py,sha256=zDw9tRcrFRmPI62xkcy9dh8IfsJcuYm7R-FVeBC_g3s,4701
|
|
19
|
-
smftools/informatics/archived/bam_conversion.py,sha256=I8EzXjQixMmqx2oWnoNSH5NURBhfT-krbWHkoi_M964,3330
|
|
20
|
-
smftools/informatics/archived/bam_direct.py,sha256=jbEFtUIiUR8Wlp3po_sWkr19AUNS9WZjglojb9j28vo,3606
|
|
21
|
-
smftools/informatics/archived/basecalls_to_adata.py,sha256=-Nag6lr_NAtU4t8jo0GSMdgIAIfmDge-5VEUPQbEatE,3692
|
|
22
|
-
smftools/informatics/archived/print_bam_query_seq.py,sha256=8Z2ZJEOOlfWYUXiZGjteLWU4yTgvV8KQzEIBHUmamGM,838
|
|
23
|
-
smftools/informatics/helpers/LoadExperimentConfig.py,sha256=6K8AmwWVapx5XbZdhIRLB7tNSr6szpPtzM78hbEts7k,2891
|
|
24
|
-
smftools/informatics/helpers/__init__.py,sha256=-PuxmsaS_IrFndAVNwyd13UqSZ4OawvxK87s2gbZIcU,2803
|
|
25
|
-
smftools/informatics/helpers/align_and_sort_BAM.py,sha256=Ce-_m9wQrLS7MPy-sA4yEHNjBPNmmzoLjLbjjJYkvwM,2470
|
|
26
|
-
smftools/informatics/helpers/aligned_BAM_to_bed.py,sha256=5-5fpE7ovDTwF7FZSwpfTNGcgxFKKE-ANxAxGuVH1ks,2887
|
|
27
|
-
smftools/informatics/helpers/bam_qc.py,sha256=IlrXXpCdTYIv_89SE8D5tJ1wtTzxWGjk9vc-rbC1UjU,2430
|
|
28
|
-
smftools/informatics/helpers/bed_to_bigwig.py,sha256=AazYEZzKgKgukSFwCpeiApzxh1kbt11X4RFqRIiBIaY,1466
|
|
29
|
-
smftools/informatics/helpers/binarize_converted_base_identities.py,sha256=VqXXm61KL2z2xK1AcohvezY69bYHI3uL8RTnDDjOOgI,3756
|
|
30
|
-
smftools/informatics/helpers/canoncall.py,sha256=5WS6lwukc_xYTdPQy0OSj-WLbx0Rg70Cun1lCucY7w8,1741
|
|
31
|
-
smftools/informatics/helpers/complement_base_list.py,sha256=k6EkLtxFoajaIufxw1p0pShJ2nPHyGLTbzZmIFFjB4o,532
|
|
32
|
-
smftools/informatics/helpers/concatenate_fastqs_to_bam.py,sha256=uSWazdNRCa_Cc1SOMreJZBchPIcII4DNluB9PJF_rA8,2713
|
|
33
|
-
smftools/informatics/helpers/converted_BAM_to_adata.py,sha256=sRmOtn0kNosLYfogqslDHg1Azk51l6nfNOLgQOnQjlA,14591
|
|
34
|
-
smftools/informatics/helpers/converted_BAM_to_adata_II.py,sha256=yYjCc5tJ0_-HgcPziccjNXCe8A7kmD5mFfNWcEDcA3o,16482
|
|
35
|
-
smftools/informatics/helpers/count_aligned_reads.py,sha256=uYyUYglF1asiaoxr-LKxPMUEbfyD7FS-dumTg2hJHzQ,2170
|
|
36
|
-
smftools/informatics/helpers/demux_and_index_BAM.py,sha256=2B_UiU05ln3gYvcN9aC_w6qs8j_WAF4pHWZekAYsXm4,2114
|
|
37
|
-
smftools/informatics/helpers/extract_base_identities.py,sha256=cWcAcWK0vhHl-jRpMX2YMLtYezhSdhMfyj4E7rm2VEU,1833
|
|
38
|
-
smftools/informatics/helpers/extract_mods.py,sha256=MbSIiyj3zx7WlSSWMRPriLMkBtxYc1EWZiAAirMVgqA,3865
|
|
39
|
-
smftools/informatics/helpers/extract_read_features_from_bam.py,sha256=nJxGjVe7LtPi8Eu5HuFFQuDi5ZnvDxLMsPfFc5bLfx4,1275
|
|
40
|
-
smftools/informatics/helpers/extract_read_lengths_from_bed.py,sha256=Cw39wgp1eBTV45Wk1l0c9l-upBW5N2OcgyWXTAXln90,678
|
|
41
|
-
smftools/informatics/helpers/extract_readnames_from_BAM.py,sha256=3FxSNqbZ1VsOK2RfHrvevQTzhWATf5E8bZ5yVOqayvk,759
|
|
42
|
-
smftools/informatics/helpers/find_conversion_sites.py,sha256=e7gRmvZSakwhnFJkhfgg9i_85rYEXtbGv4_oS8RoNlE,2329
|
|
43
|
-
smftools/informatics/helpers/generate_converted_FASTA.py,sha256=UniQfERNt4FC5L8T1tzr4cLQOJc3wMBPhuWmC-lC8Fs,3747
|
|
44
|
-
smftools/informatics/helpers/get_chromosome_lengths.py,sha256=sLumLrGsU_Xg_oJcdOpQyjUGpJoT2HbcmxWwbwzXUlE,1036
|
|
45
|
-
smftools/informatics/helpers/get_native_references.py,sha256=fRuyEm9UJkfd5DwHmFb1bxEtNvtSI1_BxGRmrCymGkw,981
|
|
46
|
-
smftools/informatics/helpers/index_fasta.py,sha256=N3IErfSiavYldeaat8xcQgA1MpykoQHcE0gHUeWuClE,267
|
|
47
|
-
smftools/informatics/helpers/make_dirs.py,sha256=lWHXpwC76MFM5sSme9i_WeYUaxutzybendokhny03ds,537
|
|
48
|
-
smftools/informatics/helpers/make_modbed.py,sha256=cOQ97gPfRiCcw_fqboxousXIiOYjp78IFYLbu749U1Y,939
|
|
49
|
-
smftools/informatics/helpers/modQC.py,sha256=LeOBObG8gAVVdgESIMceYhd5AW1gfN7ABo91OQtOzTM,1041
|
|
50
|
-
smftools/informatics/helpers/modcall.py,sha256=LVPrdMNVp2gyQTJ4BNp8NJNm89AueDjsKaY7Gqkluho,1777
|
|
51
|
-
smftools/informatics/helpers/modkit_extract_to_adata.py,sha256=uU5p9A1C9ZSEqU5P9Dc_ssDTGrZlh5uXVYlS0RRKdj0,51833
|
|
52
|
-
smftools/informatics/helpers/ohe_batching.py,sha256=QVOiyl9fYHNIFWM23afYnQo0uaOjf1NR3ASKGVSrmuw,2975
|
|
53
|
-
smftools/informatics/helpers/ohe_layers_decode.py,sha256=gIgUC9L8TFLi-fTnjR4PRzXdUaH5D6WL2Hump6XOoy0,1042
|
|
54
|
-
smftools/informatics/helpers/one_hot_decode.py,sha256=3n4rzY8_aC9YKmgrftsguMsH7fUyQ-DbWmrOYF6la9s,906
|
|
55
|
-
smftools/informatics/helpers/one_hot_encode.py,sha256=5hHigA6-SZLK84WH_RHo06F_6aTg7S3TJgvSr8gxGX8,1968
|
|
56
|
-
smftools/informatics/helpers/plot_read_length_and_coverage_histograms.py,sha256=3PmxZJGjIyPLkJvL7VIILrkE9JzB6Kdxh0IJfoJ0e5k,1942
|
|
57
|
-
smftools/informatics/helpers/run_multiqc.py,sha256=qkw48DeBdTEqzhKFGjMUlvNmTehp8wRPkcxdkwERkHc,980
|
|
58
|
-
smftools/informatics/helpers/separate_bam_by_bc.py,sha256=Fsi8OEmv5Ny13cWoHVV9JmEjVFEXT_ZxbBOlRdmyPbE,1742
|
|
59
|
-
smftools/informatics/helpers/split_and_index_BAM.py,sha256=tLAhLoPfiVJhLYGr3LVcjo0xQ_8-yb60hR46EQUpL-s,1570
|
|
60
|
-
smftools/informatics/helpers/archived/informatics.py,sha256=gKb2ZJ_LcAeEXuQqn9e-QDF_sS4tMpMTr2vZlqa7n54,14572
|
|
61
|
-
smftools/informatics/helpers/archived/load_adata.py,sha256=DhvYYqO9VLsZqhL1WjN9sd-e3fgvdXGlgTP18z1h0L0,33654
|
|
62
|
-
smftools/plotting/__init__.py,sha256=MKT8y7Wq1X1CCDhLxyzYQfqXpEXQZFpZzhi25qGOul4,707
|
|
63
|
-
smftools/plotting/classifiers.py,sha256=8_zabh4NNB1_yVxLD22lfrfl5yfzbEoG3XWqlIqdtrQ,13786
|
|
64
|
-
smftools/plotting/general_plotting.py,sha256=LjN85KyXtuLbDpryMweSps2vFX9GEfc5flmLybLVdn8,9483
|
|
65
|
-
smftools/plotting/position_stats.py,sha256=4XukYIWeWZ_aGSZg1K0t37KA2aknjNNKT5kcKFfuz8Q,17428
|
|
66
|
-
smftools/preprocessing/__init__.py,sha256=2s_46L2qDmM_YoaG3j9YvZ6nTu1T_IF0czhlzC2emQQ,1349
|
|
67
|
-
smftools/preprocessing/append_C_context.py,sha256=mmXju79pKYwrz7WP6v8rztDis4KHHhllBqJCmKky7lk,4414
|
|
68
|
-
smftools/preprocessing/binarize_on_Youden.py,sha256=O5E3vFc2zXMfKW0p0JGDlmRKEx2_VP6dAqfvrumzz00,1797
|
|
69
|
-
smftools/preprocessing/binary_layers_to_ohe.py,sha256=Lxd8knelNTaUozfGMFNMlnrOb6uP28Laj3Ymw6cRHL0,1826
|
|
70
|
-
smftools/preprocessing/calculate_complexity.py,sha256=cXMpFrhkwkPipQo2GZGT5yFknMYUMt1t8gz0Cse1DrA,3288
|
|
71
|
-
smftools/preprocessing/calculate_consensus.py,sha256=6zRpRmb2xdfDu5hctZrReALRb7Pjn8sy8xJZTm3o0nU,2442
|
|
72
|
-
smftools/preprocessing/calculate_converted_read_methylation_stats.py,sha256=CWS3yoDTceZ8kDMWdy9eEo9Nd-yEbr2OehNovyoLR8w,5822
|
|
73
|
-
smftools/preprocessing/calculate_coverage.py,sha256=XhtOo73ZL1kOvpzEaZAkOCtSD870zBPm0H9D7Kpv190,1867
|
|
74
|
-
smftools/preprocessing/calculate_pairwise_differences.py,sha256=5zJbNNaFld5qgKRoPyplCmMHflbvAQ9eKWCXPXPpJ60,1774
|
|
75
|
-
smftools/preprocessing/calculate_pairwise_hamming_distances.py,sha256=e5Mzyex7pT29H2PY014uU4Fi_eewbut1JkzC1ffBbCg,961
|
|
76
|
-
smftools/preprocessing/calculate_position_Youden.py,sha256=9GY_WWwaxpB2Xppck3WT1zHtFOhTXrpuDIgbxLC9A7E,7450
|
|
77
|
-
smftools/preprocessing/calculate_read_length_stats.py,sha256=gNNePwMqYZJidzGgT1ZkfSlvc5Y3I3bi5KNYpP6wQQc,4584
|
|
78
|
-
smftools/preprocessing/clean_NaN.py,sha256=6eWSFFLxipiejcR_BeYJ4sVaayMuiEIoscd0eLvJuL0,1557
|
|
79
|
-
smftools/preprocessing/filter_adata_by_nan_proportion.py,sha256=GZcvr2JCsthX8EMw34S9-W3fc6JElw6ka99Jy6f2JvA,1292
|
|
80
|
-
smftools/preprocessing/filter_converted_reads_on_methylation.py,sha256=LOyBho1ltD2HXWrpO2xEeHk4aiHJxxWuG7_lr2NHSJk,2042
|
|
81
|
-
smftools/preprocessing/filter_reads_on_length.py,sha256=Y4WQO5Mna4Xm9hFYKk66hEQb67GnzCTXPOokebRnV-g,2625
|
|
82
|
-
smftools/preprocessing/flag_duplicate_reads.py,sha256=8izI9ekC8oOY1gf500hg8lM0UQFs0_2j2PFUQwgXES8,6276
|
|
83
|
-
smftools/preprocessing/invert_adata.py,sha256=FS-Yo8o70pIT39CoxRtt73dFr1SGZiZqU1HcIj8zDQg,782
|
|
84
|
-
smftools/preprocessing/load_sample_sheet.py,sha256=cRrf-6FDWu6t0eqZufHaF5qn1DLww3DcN5IEncj5K6k,1497
|
|
85
|
-
smftools/preprocessing/make_dirs.py,sha256=lWHXpwC76MFM5sSme9i_WeYUaxutzybendokhny03ds,537
|
|
86
|
-
smftools/preprocessing/min_non_diagonal.py,sha256=hx1asW8CEmLaIroZISW8EcAf_RnBEC_nofGD8QG0b1E,711
|
|
87
|
-
smftools/preprocessing/recipes.py,sha256=cfKEpKW8TtQLe1CMdSHyPuIgKiWOPn7uP6uMIoRlnaQ,7063
|
|
88
|
-
smftools/preprocessing/subsample_adata.py,sha256=ivJvJIOvEtyvAjqZ7cwEeVedm4QgJxCJEI7sFaTuI3w,2360
|
|
89
|
-
smftools/preprocessing/archives/mark_duplicates.py,sha256=kwfstcWb7KkqeNB321dB-NLe8yd9_hZsSmpL8pCVBQg,8747
|
|
90
|
-
smftools/preprocessing/archives/preprocessing.py,sha256=4mLT09A7vwRZ78FHmuwtv38mH9TQ9qrZc_WjHRhhkIw,34379
|
|
91
|
-
smftools/preprocessing/archives/remove_duplicates.py,sha256=Erooi5_1VOUNfWpzddzmMNYMCl1U1jJryt7ZtMhabAs,699
|
|
92
|
-
smftools/tools/__init__.py,sha256=jnO_-xJyt9Q86QKCZa6GvFCtacx9G4rW_HJtSyeiook,1717
|
|
93
|
-
smftools/tools/apply_hmm.py,sha256=pJXCULay0zbmubrwql368y7yiHAZr2bJhuGx2QUuKnE,9321
|
|
94
|
-
smftools/tools/apply_hmm_batched.py,sha256=1_36BK3ie7lPU4pD93TOBYltmsbdE3VJPqZydiw8I5s,10410
|
|
95
|
-
smftools/tools/calculate_distances.py,sha256=KDWimQ6u-coyxCKrbTm42Fh_Alf_gURBZ0vfFaem848,644
|
|
96
|
-
smftools/tools/calculate_umap.py,sha256=SoZvvnCBjCdshgkW0ODH1lUY97AHkrPXTxWDdYZO8VY,2513
|
|
97
|
-
smftools/tools/call_hmm_peaks.py,sha256=ixnO-KwFYtLiXt8dSa1dEjNR0RO6b-Eswziz1AA647A,4933
|
|
98
|
-
smftools/tools/classifiers.py,sha256=mwSTpWUXBPjmUuV5i_SMG1lIPpHSMCzsKhl8wTbm-Og,36903
|
|
99
|
-
smftools/tools/cluster_adata_on_methylation.py,sha256=UDC5lpW8fZ6O-16ETu-mbflLkNBKuIg7RIzQ9r7knvA,5760
|
|
100
|
-
smftools/tools/display_hmm.py,sha256=4yM-4wpQnWQiim16cUV4ITI-USEEEtaLHqK3LPu5YCg,840
|
|
101
|
-
smftools/tools/general_tools.py,sha256=P9Ecq2SxzmhwLBvWaMpqGGzSPjOiMmG-AspCb0QaaPk,2573
|
|
102
|
-
smftools/tools/hmm_readwrite.py,sha256=DjJ3hunpBQ7N0GVvxL7-0QUas_SkA88LVgL72mVK2cI,359
|
|
103
|
-
smftools/tools/nucleosome_hmm_refinement.py,sha256=yzkx1i3ez678SS_mOMbg6sbI-yHXaUq5eJdaEF43S1w,4649
|
|
104
|
-
smftools/tools/position_stats.py,sha256=FNR5JaD4e3ykrieN922IIyM4GHvwybz--_bgNPhAkNs,9500
|
|
105
|
-
smftools/tools/read_stats.py,sha256=ze-1kuEnFR7UhNzuPB-UgJ_YIHCfDhOgs6oWAo90VaI,2546
|
|
106
|
-
smftools/tools/subset_adata.py,sha256=nBbtAxCNteZCUBmPnZ9swQNyU74XgWM8aJHHWg2AuL0,1025
|
|
107
|
-
smftools/tools/train_hmm.py,sha256=TCzvHlKLoQnKhflZOsXyXlgPhtk54k9EAoP89kUbQ1U,2465
|
|
108
|
-
smftools/tools/archived/classify_methylated_features.py,sha256=Z0N2UKw3luD3CTQ8wcUvdnMY7w-8574OJbEcwzNsy88,2897
|
|
109
|
-
smftools/tools/archived/classify_non_methylated_features.py,sha256=IJERTozEs7IPL7K-VIjq2q2K36wRCW9iiNSYLAXasrA,3256
|
|
110
|
-
smftools/tools/archived/subset_adata_v1.py,sha256=qyU9iCal03edb5aUS3AZ2U4TlL3uQ42jGI9hX3QF7Fc,1047
|
|
111
|
-
smftools/tools/archived/subset_adata_v2.py,sha256=OKZoUpvdURPtckIQxGTWmOI5jLa-_EU62Xs3LyyehnA,1880
|
|
112
|
-
smftools/tools/data/__init__.py,sha256=DEEeRUbOOaeqvy1swkUWPK_TPcjmkU6CcoZAqSa5cfs,91
|
|
113
|
-
smftools/tools/data/anndata_data_module.py,sha256=ReAdYxwPR446eeNRKYCrt9OEhlQ9woY_4qxncJbUh4c,4425
|
|
114
|
-
smftools/tools/data/preprocessing.py,sha256=dSs6Qs3wmlccFPZSpOc-uy1nlFSf68wWQKwF1iTqMok,137
|
|
115
|
-
smftools/tools/evaluation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
116
|
-
smftools/tools/inference/__init__.py,sha256=VJCamuKjcucG7RPFsjd8vECd_kwPlIz92u64gdPePDY,56
|
|
117
|
-
smftools/tools/inference/lightning_inference.py,sha256=8SXbJWLDgbWiZW0bpC3IMkU01S1d_2zyzB__KxIAuBk,1469
|
|
118
|
-
smftools/tools/models/__init__.py,sha256=bMfPbQ5bDmn_kWv82virLuUhjb12Yow7t_j96afNbyA,421
|
|
119
|
-
smftools/tools/models/base.py,sha256=TRJMyKHGLLUkhEbzRMKIaNf-6yFyCEf5s0Xs0QUeG-0,505
|
|
120
|
-
smftools/tools/models/cnn.py,sha256=M7SYPL-7f2Cyf0zQGmnV2vI6-KCz6rfikHV81XLy-lA,1169
|
|
121
|
-
smftools/tools/models/lightning_base.py,sha256=8Zoj-ij5fSsFAn30hJfdUv-pZGuJLGtwj8HoHK3Msws,1354
|
|
122
|
-
smftools/tools/models/mlp.py,sha256=YXVf1Pix-S2aqOMvmsVzbF_igsf9_MjKbuZw6FBo_nk,561
|
|
123
|
-
smftools/tools/models/positional.py,sha256=7g93nyxnvWTYrfrdvIMWa74DG0obn5FbC2-ngWmCBVo,631
|
|
124
|
-
smftools/tools/models/rnn.py,sha256=DVhG1mJ47ObqaHiLHEwHTpme1vR_uNeTnaaKzC6whgQ,656
|
|
125
|
-
smftools/tools/models/sklearn_models.py,sha256=rFDrq7nJXHd4yCrc5oAvB76m04vdHQRNqWh3RCCOBQ0,1289
|
|
126
|
-
smftools/tools/models/transformer.py,sha256=d0v7vtXNXOHDgOsXMyRkMLObpPpWjLvbFntGnh924g8,4896
|
|
127
|
-
smftools/tools/models/wrappers.py,sha256=HEY2A6-Bk6MtVZ9jOaPT8S1Qi0L98SyEg1nbKqYZoag,697
|
|
128
|
-
smftools/tools/training/__init__.py,sha256=PxAsc6UhXYyZkmwewhYK3OPVZG_se_YfSq75fqc0EBM,56
|
|
129
|
-
smftools/tools/training/train_lightning_model.py,sha256=dtx1lJzgP8eMR1VyXsQo8KnzB6bhF2VY3kHhkEqVV58,1157
|
|
130
|
-
smftools/tools/utils/__init__.py,sha256=yOpzBc9AXbarSRfN8Ixh2Z1uWLGpgpjRR46h6E46_2w,62
|
|
131
|
-
smftools/tools/utils/device.py,sha256=GITrULOty2Fr96Bqt1wi1PaYl_oVgB5Z99Gfn5vQy4o,274
|
|
132
|
-
smftools/tools/utils/grl.py,sha256=BWBDp_kQBigrUzQpRbZzgpfr_WOcd2K2V3MQL-aAIc4,334
|
|
133
|
-
smftools-0.1.7.dist-info/METADATA,sha256=xb2e-EdaGquNERQ-0Pcs3SR4yTi5V_ua10ITchFjTkI,8870
|
|
134
|
-
smftools-0.1.7.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
|
|
135
|
-
smftools-0.1.7.dist-info/licenses/LICENSE,sha256=F8LwmL6vMPddaCt1z1S83Kh_OZv50alTlY7BvVx1RXw,1066
|
|
136
|
-
smftools-0.1.7.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/smftools/informatics/{helpers → archived/helpers/archived}/extract_read_lengths_from_bed.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|