pyrna-lab 0.1.0__tar.gz
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.
- pyrna_lab-0.1.0/PKG-INFO +58 -0
- pyrna_lab-0.1.0/README.md +26 -0
- pyrna_lab-0.1.0/pyproject.toml +69 -0
- pyrna_lab-0.1.0/pyrna_lab.egg-info/PKG-INFO +58 -0
- pyrna_lab-0.1.0/pyrna_lab.egg-info/SOURCES.txt +29 -0
- pyrna_lab-0.1.0/pyrna_lab.egg-info/dependency_links.txt +1 -0
- pyrna_lab-0.1.0/pyrna_lab.egg-info/requires.txt +10 -0
- pyrna_lab-0.1.0/pyrna_lab.egg-info/top_level.txt +2 -0
- pyrna_lab-0.1.0/rna_lab/__init__.py +16 -0
- pyrna_lab-0.1.0/rna_lab/ai_dataset.py +39 -0
- pyrna_lab-0.1.0/rna_lab/app.py +4792 -0
- pyrna_lab-0.1.0/rna_lab/baseline_paired_unpaired.pth +0 -0
- pyrna_lab-0.1.0/rna_lab/dataset.py +129 -0
- pyrna_lab-0.1.0/rna_lab/evaluate.py +139 -0
- pyrna_lab-0.1.0/rna_lab/evaluate_pair.py +134 -0
- pyrna_lab-0.1.0/rna_lab/evaluate_pair2.py +118 -0
- pyrna_lab-0.1.0/rna_lab/model.py +43 -0
- pyrna_lab-0.1.0/rna_lab/pair_model.py +37 -0
- pyrna_lab-0.1.0/rna_lab/predict.py +168 -0
- pyrna_lab-0.1.0/rna_lab/preprocessing.py +68 -0
- pyrna_lab-0.1.0/rna_lab/rna_model.pth +0 -0
- pyrna_lab-0.1.0/rna_lab/rna_pair_model.pth +0 -0
- pyrna_lab-0.1.0/rna_lab/sequence.py +53 -0
- pyrna_lab-0.1.0/rna_lab/structure.py +110 -0
- pyrna_lab-0.1.0/rna_lab/test_pair_model.py +28 -0
- pyrna_lab-0.1.0/rna_lab/test_real_data.py +39 -0
- pyrna_lab-0.1.0/rna_lab/train.py +87 -0
- pyrna_lab-0.1.0/rna_lab/train_pair.py +89 -0
- pyrna_lab-0.1.0/rna_lab/train_pair_full.py +169 -0
- pyrna_lab-0.1.0/rna_lab/validation.py +43 -0
- pyrna_lab-0.1.0/setup.cfg +4 -0
pyrna_lab-0.1.0/PKG-INFO
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: pyrna-lab
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: An open-source Python toolkit for RNA analysis and AI research.
|
|
5
|
+
Author: Mohammad Paknahad
|
|
6
|
+
Maintainer: Mohammad Paknahad
|
|
7
|
+
License: MIT
|
|
8
|
+
Project-URL: Homepage, https://github.com/paknahad91/PyRNA-Lab
|
|
9
|
+
Project-URL: Repository, https://github.com/paknahad91/PyRNA-Lab
|
|
10
|
+
Project-URL: Issues, https://github.com/MohammadPaknahad/PyRNA-Lab/issues
|
|
11
|
+
Keywords: RNA,bioinformatics,machine-learning,deep-learning,RNA-structure,computational-biology
|
|
12
|
+
Classifier: Development Status :: 3 - Alpha
|
|
13
|
+
Classifier: Intended Audience :: Science/Research
|
|
14
|
+
Classifier: Intended Audience :: Developers
|
|
15
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
16
|
+
Classifier: Programming Language :: Python :: 3
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
21
|
+
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
|
|
22
|
+
Requires-Python: >=3.10
|
|
23
|
+
Description-Content-Type: text/markdown
|
|
24
|
+
Requires-Dist: numpy>=1.26
|
|
25
|
+
Requires-Dist: pandas>=2.0
|
|
26
|
+
Provides-Extra: ai
|
|
27
|
+
Requires-Dist: torch>=2.0; extra == "ai"
|
|
28
|
+
Provides-Extra: dev
|
|
29
|
+
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
30
|
+
Requires-Dist: build>=1.0; extra == "dev"
|
|
31
|
+
Requires-Dist: twine>=5.0; extra == "dev"
|
|
32
|
+
|
|
33
|
+
# PyRNA-Lab 🧬
|
|
34
|
+
|
|
35
|
+
PyRNA-Lab is an open-source Python toolkit for RNA analysis,
|
|
36
|
+
machine learning, and computational biology research.
|
|
37
|
+
|
|
38
|
+
## Vision
|
|
39
|
+
|
|
40
|
+
Our goal is to build a reproducible and accessible computational
|
|
41
|
+
laboratory for RNA research.
|
|
42
|
+
|
|
43
|
+
PyRNA-Lab will provide tools for:
|
|
44
|
+
|
|
45
|
+
- RNA sequence analysis
|
|
46
|
+
- Data preprocessing
|
|
47
|
+
- RNA structure analysis
|
|
48
|
+
- Machine learning
|
|
49
|
+
- Deep learning
|
|
50
|
+
- Prediction
|
|
51
|
+
- Model evaluation
|
|
52
|
+
- Visualization
|
|
53
|
+
- Explainability
|
|
54
|
+
- Uncertainty estimation
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
Mohammad Paknahad (c)
|
|
58
|
+
2026
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# PyRNA-Lab 🧬
|
|
2
|
+
|
|
3
|
+
PyRNA-Lab is an open-source Python toolkit for RNA analysis,
|
|
4
|
+
machine learning, and computational biology research.
|
|
5
|
+
|
|
6
|
+
## Vision
|
|
7
|
+
|
|
8
|
+
Our goal is to build a reproducible and accessible computational
|
|
9
|
+
laboratory for RNA research.
|
|
10
|
+
|
|
11
|
+
PyRNA-Lab will provide tools for:
|
|
12
|
+
|
|
13
|
+
- RNA sequence analysis
|
|
14
|
+
- Data preprocessing
|
|
15
|
+
- RNA structure analysis
|
|
16
|
+
- Machine learning
|
|
17
|
+
- Deep learning
|
|
18
|
+
- Prediction
|
|
19
|
+
- Model evaluation
|
|
20
|
+
- Visualization
|
|
21
|
+
- Explainability
|
|
22
|
+
- Uncertainty estimation
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
Mohammad Paknahad (c)
|
|
26
|
+
2026
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=68"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "pyrna-lab"
|
|
7
|
+
version = "0.1.0"
|
|
8
|
+
description = "An open-source Python toolkit for RNA analysis and AI research."
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
requires-python = ">=3.10"
|
|
11
|
+
license = { text = "MIT" }
|
|
12
|
+
|
|
13
|
+
authors = [
|
|
14
|
+
{ name = "Mohammad Paknahad" }
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
maintainers = [
|
|
18
|
+
{ name = "Mohammad Paknahad" }
|
|
19
|
+
]
|
|
20
|
+
|
|
21
|
+
keywords = [
|
|
22
|
+
"RNA",
|
|
23
|
+
"bioinformatics",
|
|
24
|
+
"machine-learning",
|
|
25
|
+
"deep-learning",
|
|
26
|
+
"RNA-structure",
|
|
27
|
+
"computational-biology"
|
|
28
|
+
]
|
|
29
|
+
|
|
30
|
+
classifiers = [
|
|
31
|
+
"Development Status :: 3 - Alpha",
|
|
32
|
+
"Intended Audience :: Science/Research",
|
|
33
|
+
"Intended Audience :: Developers",
|
|
34
|
+
"License :: OSI Approved :: MIT License",
|
|
35
|
+
"Programming Language :: Python :: 3",
|
|
36
|
+
"Programming Language :: Python :: 3.10",
|
|
37
|
+
"Programming Language :: Python :: 3.11",
|
|
38
|
+
"Programming Language :: Python :: 3.12",
|
|
39
|
+
"Programming Language :: Python :: 3.13",
|
|
40
|
+
"Topic :: Scientific/Engineering :: Bio-Informatics"
|
|
41
|
+
]
|
|
42
|
+
|
|
43
|
+
dependencies = [
|
|
44
|
+
"numpy>=1.26",
|
|
45
|
+
"pandas>=2.0"
|
|
46
|
+
]
|
|
47
|
+
|
|
48
|
+
[project.optional-dependencies]
|
|
49
|
+
ai = [
|
|
50
|
+
"torch>=2.0"
|
|
51
|
+
]
|
|
52
|
+
|
|
53
|
+
dev = [
|
|
54
|
+
"pytest>=8.0",
|
|
55
|
+
"build>=1.0",
|
|
56
|
+
"twine>=5.0"
|
|
57
|
+
]
|
|
58
|
+
|
|
59
|
+
[project.urls]
|
|
60
|
+
Homepage = "https://github.com/paknahad91/PyRNA-Lab"
|
|
61
|
+
Repository = "https://github.com/paknahad91/PyRNA-Lab"
|
|
62
|
+
Issues = "https://github.com/MohammadPaknahad/PyRNA-Lab/issues"
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
[tool.setuptools.packages.find]
|
|
66
|
+
where = ["."]
|
|
67
|
+
|
|
68
|
+
[tool.setuptools.package-data]
|
|
69
|
+
rna_lab = ["*.pth"]
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: pyrna-lab
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: An open-source Python toolkit for RNA analysis and AI research.
|
|
5
|
+
Author: Mohammad Paknahad
|
|
6
|
+
Maintainer: Mohammad Paknahad
|
|
7
|
+
License: MIT
|
|
8
|
+
Project-URL: Homepage, https://github.com/paknahad91/PyRNA-Lab
|
|
9
|
+
Project-URL: Repository, https://github.com/paknahad91/PyRNA-Lab
|
|
10
|
+
Project-URL: Issues, https://github.com/MohammadPaknahad/PyRNA-Lab/issues
|
|
11
|
+
Keywords: RNA,bioinformatics,machine-learning,deep-learning,RNA-structure,computational-biology
|
|
12
|
+
Classifier: Development Status :: 3 - Alpha
|
|
13
|
+
Classifier: Intended Audience :: Science/Research
|
|
14
|
+
Classifier: Intended Audience :: Developers
|
|
15
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
16
|
+
Classifier: Programming Language :: Python :: 3
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
21
|
+
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
|
|
22
|
+
Requires-Python: >=3.10
|
|
23
|
+
Description-Content-Type: text/markdown
|
|
24
|
+
Requires-Dist: numpy>=1.26
|
|
25
|
+
Requires-Dist: pandas>=2.0
|
|
26
|
+
Provides-Extra: ai
|
|
27
|
+
Requires-Dist: torch>=2.0; extra == "ai"
|
|
28
|
+
Provides-Extra: dev
|
|
29
|
+
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
30
|
+
Requires-Dist: build>=1.0; extra == "dev"
|
|
31
|
+
Requires-Dist: twine>=5.0; extra == "dev"
|
|
32
|
+
|
|
33
|
+
# PyRNA-Lab 🧬
|
|
34
|
+
|
|
35
|
+
PyRNA-Lab is an open-source Python toolkit for RNA analysis,
|
|
36
|
+
machine learning, and computational biology research.
|
|
37
|
+
|
|
38
|
+
## Vision
|
|
39
|
+
|
|
40
|
+
Our goal is to build a reproducible and accessible computational
|
|
41
|
+
laboratory for RNA research.
|
|
42
|
+
|
|
43
|
+
PyRNA-Lab will provide tools for:
|
|
44
|
+
|
|
45
|
+
- RNA sequence analysis
|
|
46
|
+
- Data preprocessing
|
|
47
|
+
- RNA structure analysis
|
|
48
|
+
- Machine learning
|
|
49
|
+
- Deep learning
|
|
50
|
+
- Prediction
|
|
51
|
+
- Model evaluation
|
|
52
|
+
- Visualization
|
|
53
|
+
- Explainability
|
|
54
|
+
- Uncertainty estimation
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
Mohammad Paknahad (c)
|
|
58
|
+
2026
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
README.md
|
|
2
|
+
pyproject.toml
|
|
3
|
+
pyrna_lab.egg-info/PKG-INFO
|
|
4
|
+
pyrna_lab.egg-info/SOURCES.txt
|
|
5
|
+
pyrna_lab.egg-info/dependency_links.txt
|
|
6
|
+
pyrna_lab.egg-info/requires.txt
|
|
7
|
+
pyrna_lab.egg-info/top_level.txt
|
|
8
|
+
rna_lab/__init__.py
|
|
9
|
+
rna_lab/ai_dataset.py
|
|
10
|
+
rna_lab/app.py
|
|
11
|
+
rna_lab/baseline_paired_unpaired.pth
|
|
12
|
+
rna_lab/dataset.py
|
|
13
|
+
rna_lab/evaluate.py
|
|
14
|
+
rna_lab/evaluate_pair.py
|
|
15
|
+
rna_lab/evaluate_pair2.py
|
|
16
|
+
rna_lab/model.py
|
|
17
|
+
rna_lab/pair_model.py
|
|
18
|
+
rna_lab/predict.py
|
|
19
|
+
rna_lab/preprocessing.py
|
|
20
|
+
rna_lab/rna_model.pth
|
|
21
|
+
rna_lab/rna_pair_model.pth
|
|
22
|
+
rna_lab/sequence.py
|
|
23
|
+
rna_lab/structure.py
|
|
24
|
+
rna_lab/test_pair_model.py
|
|
25
|
+
rna_lab/test_real_data.py
|
|
26
|
+
rna_lab/train.py
|
|
27
|
+
rna_lab/train_pair.py
|
|
28
|
+
rna_lab/train_pair_full.py
|
|
29
|
+
rna_lab/validation.py
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
from dataset import EFoldDataset
|
|
2
|
+
from preprocessing import preprocess_record
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
DATASET_PATH = "doi_10_5061_dryad_79cnp5j95__v20260129/efold_train.json"
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class RNAAIDataset:
|
|
9
|
+
def __init__(self, file_path):
|
|
10
|
+
self.dataset = EFoldDataset(file_path)
|
|
11
|
+
|
|
12
|
+
def samples(self, limit=10):
|
|
13
|
+
count = 0
|
|
14
|
+
|
|
15
|
+
for name, record in self.dataset:
|
|
16
|
+
encoded, target = preprocess_record(record)
|
|
17
|
+
|
|
18
|
+
yield {
|
|
19
|
+
"name": name,
|
|
20
|
+
"sequence": encoded,
|
|
21
|
+
"target": target
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
count += 1
|
|
25
|
+
|
|
26
|
+
if count == limit:
|
|
27
|
+
break
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
if __name__ == "__main__":
|
|
31
|
+
dataset = RNAAIDataset(DATASET_PATH)
|
|
32
|
+
|
|
33
|
+
for sample in dataset.samples(3):
|
|
34
|
+
print("=" * 50)
|
|
35
|
+
print("RNA:", sample["name"])
|
|
36
|
+
print("Input length:", len(sample["sequence"]))
|
|
37
|
+
print("Target length:", len(sample["target"]))
|
|
38
|
+
print("Input:", sample["sequence"])
|
|
39
|
+
print("Target:", sample["target"])
|