orfdata 0.36.0__tar.gz → 0.37.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.
- {orfdata-0.36.0/orfdata.egg-info → orfdata-0.37.0}/PKG-INFO +11 -6
- {orfdata-0.36.0 → orfdata-0.37.0}/README.md +10 -5
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/catalogs.md +50 -44
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/coverage.md +2 -2
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/downstream.md +5 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/index.md +10 -7
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/proteome.md +16 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/catalog.py +6 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/catalogs.py +2 -2
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/cli.py +3 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/catalogs.json +511 -5
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/proteome.py +65 -15
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/proteome_cli.py +4 -1
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sources/riborf.py +25 -11
- orfdata-0.37.0/orfdata/version.py +1 -0
- {orfdata-0.36.0 → orfdata-0.37.0/orfdata.egg-info}/PKG-INFO +11 -6
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/README.md +2 -2
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_catalog_registry.py +9 -3
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_more_species.py +13 -12
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_proteome.py +19 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_riborf.py +37 -9
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_uorf_catalog.py +3 -0
- orfdata-0.36.0/orfdata/version.py +0 -1
- {orfdata-0.36.0 → orfdata-0.37.0}/LICENSE +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/MANIFEST.in +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/deploy.sh +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/copy-yeast.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/dog-peptides.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/downloads.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/examples.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/human-tissue.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/ingolia-yeast.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/measurements.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/pairing.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/pfizer-protein.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/pfizer-rna.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/reference.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/search-references.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/source-references.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/species.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/storage.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/stylesheets/docs.css +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs/viral.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/docs.sh +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/lint.sh +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/mkdocs.yml +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/__init__.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/_pinned_genome.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/_structure.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/build.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/catalog_cli.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/catalog_manifest.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/cli_output.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/chains.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/datasets.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/genomes.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/ires/rfam-15.1-human-ires.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/orf-evidence/AUTHOR-LICENSE.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/orf-evidence/NOTICE.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/orf-evidence/catalog.json.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/orf-evidence/manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/uorf-evidence/AUTHOR-LICENSE.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/uorf-evidence/NOTICE.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/uorf-evidence/catalog.json.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/uorf-evidence/manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/viral/NOTICE.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/viral/gdc-grch38-d1-vd1-coverage.tsv +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/viral/gdc-grch38-d1-vd1-genbank.tsv +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/viral/gdc-grch38-d1-vd1-pave.tsv +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/viral/hpv16-refseq-CDS.json.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/data/viral/subsets.yaml +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/dataset.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/dataset_cli.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/datasets.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/download_cli.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/downloads.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/evidence.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/evidence_summary.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/fasta.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/genbank.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/genomes.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/genomes_cli.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/gtf.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/initiation_context.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/install.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/liftover.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/liftover_cli.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/measurements.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/model.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/net.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/pairing.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/record_sources.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/reference.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/reference_ledger.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/reference_mapping.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/reference_table.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/refseq.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/rna.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/search_reference.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sequence.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sources/__init__.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sources/copy.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sources/ingolia.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sources/kaabinejadian.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sources/ncorf_mammals.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sources/openprot.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sources/peptideatlas.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sources/pfizer.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sources/pfizer_rna.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/sources/wang.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/viral.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/viral_annotation.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/viral_cli.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/viral_coverage.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/viral_panel.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/viral_registry.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata/viral_subsets.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata.egg-info/SOURCES.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata.egg-info/dependency_links.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata.egg-info/entry_points.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata.egg-info/requires.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/orfdata.egg-info/top_level.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/pyproject.toml +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/setup.cfg +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/test.sh +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/conftest.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/aggregate_evidence.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/GSM1905474.soft +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/GSM1905474_KL9_fpkm.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/GSM1905476.soft +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/GSM1905476_KL10_fpkm.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/GSM1905478.soft +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/GSM1905478_KL11_fpkm.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/GSM1905479.soft +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/GSM1905479_KL12_fpkm.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/NOTICE.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/expected.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/geo-series.soft +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/methods.pdf +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/paper.xml +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/pmc-metadata.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/qconcat.fasta +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/copy/workbook.xlsx +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346111.metadata.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346111.quant.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346114.metadata.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346114.quant.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346115.metadata.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346115.quant.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346116.metadata.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346116.quant.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346117.metadata.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346117.quant.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346118.metadata.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346118.quant.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346120.metadata.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346120.quant.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346122.metadata.txt +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/GSM346122.quant.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/NOTICE.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/expected.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ingolia/readMe.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/kaabinejadian/README.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/kaabinejadian/Results.zip +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/kaabinejadian/manifest-v1.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/kaabinejadian/manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/kaabinejadian/sdrf.tsv +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/README.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/S3.xlsx +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/ensembl107.cdna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/ensembl107.gtf.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/human-ensembl107.gtf.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/human.bed +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/human.pep.fa +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/mouse.bed +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/ncorf_mammals/mouse.pep.fa +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/openprot/README.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/openprot/ensembl106.cdna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/openprot/ensembl106.gtf.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/openprot/mouse-openprot-2_2-altprots+isoforms-min_2_pep-GRCm39.106.bed.zip +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/openprot/mouse-openprot-2_2-altprots+isoforms-min_2_pep-GRCm39.106.fasta.zip +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/openprot/mouse-openprot-2_2-altprots+isoforms-min_2_pep-GRCm39.106.tsv.zip +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/peptideatlas/README.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/peptideatlas/atlas_build.tsv.zip +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/peptideatlas/ensembl.pep.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/peptideatlas/manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/NOTICE.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/dog/expected.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/dog/manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/dog/protein.tsv +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/dog/search.fasta +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/human/expected.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/human/manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/human/protein.tsv +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/human/search.fasta +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/mouse/expected.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/mouse/manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/mouse/protein.tsv +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer/mouse/search.fasta +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/GSE325522_family.soft.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/GSE325523_family.soft.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/GSE325525_family.soft.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/NOTICE.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/counts.csv.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/dog-annotation.gtf.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/dog-expected.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/dog-manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/mouse-annotation.gtf.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/mouse-expected.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/mouse-manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/pfizer_rna/samples.xlsx +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/references/README.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/references/canis_lupus_familiaris.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/references/context-keys-v0.4.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/references/ensembl115.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/references/homo_sapiens.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/references/mitochondrial.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/references/mus_musculus.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/references/saccharomyces_cerevisiae.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/references/uniprot_literature.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/regions/NOTICE.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/regions/ingolia.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/SD3.xlsx +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/ensembl107.cdna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/ensembl107.gtf.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/ensembl107.ncrna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/human-ensembl105.cdna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/human-ensembl105.gtf.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/human-ensembl105.ncrna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/worm-ensembl105.cdna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/worm-ensembl105.gtf.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/worm-ensembl105.ncrna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/yeast-ensembl115.cdna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/yeast-ensembl115.dna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/yeast-ensembl115.gtf.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/zebrafish-ensembl115.cdna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/zebrafish-ensembl115.gtf.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/riborf/zebrafish-ensembl115.ncrna.fa.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/search_reference/NOTICE.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/search_reference/dog.fasta +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/search_reference/ensembl83-expected.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/search_reference/ensembl83-human.fasta.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/search_reference/expected.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/storage/README.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/storage/generate.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/storage/v1.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/storage/v1.sqlite +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/storage/v2.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/storage/v2.sqlite +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/storage/v3.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/storage/v3.sqlite +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/storage/v4.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/storage/v4.sqlite +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/viral/GRCh83.d1.vd1_virus_decoy.txt.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/viral/NC_001526.4.gb.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/viral/genbank/HBV__X04615.1.gb.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/viral/genbank/HPV16__K02718.1.gb.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/viral/genbank/HPV35__X74477.1.gb.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/viral/genbank/HPV51__M62877.1.gb.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/viral/genbank/HPV56__X74483.1.gb.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/wang/NOTICE.md +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/wang/annotation.gtf.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/wang/copies.zip +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/wang/expected.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/wang/manifest.json +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/wang/protein.zip +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/wang/rna.zip +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/data/wang/search.fasta.gz +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_copy.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_cross_reference_pairing.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_dog_peptides.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_downloads.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_ensembl_search_reference.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_evidence_rules.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_evidence_summary.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_genbank.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_genbank_equivalence.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_genetic_codes.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_genomes.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_ingolia.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_initiation_context.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_liftover.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_local_build_queries.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_measurements.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_merge_catalogs.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_ncorf_mammals.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_openprot.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_orf_cases.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_orf_gtf.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_paired_selectors.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_pairing.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_pfizer.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_pfizer_rna.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_protein_set.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_proteome_external.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_proteome_fasta_tokens.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_proteome_producer_graph.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_reference_context.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_reference_ledger.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_reference_mapping.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_reference_orf.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_reference_table.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_refseq.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_region_targets.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_search_reference.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_selectors.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_storage.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_viral.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_viral_bundle.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_viral_cli.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_viral_collections.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_viral_completeness.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_viral_coverage.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_viral_initiation.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_viral_origin_join.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_viral_sources.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_viral_subsets.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tests/test_wang.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tools/__init__.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tools/build_gdc_viral_coverage.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tools/build_hpv16_cds.py +0 -0
- {orfdata-0.36.0 → orfdata-0.37.0}/tools/build_reference_ledger.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: orfdata
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.37.0
|
|
4
4
|
Summary: Reference proteomes with evidence-backed noncanonical ORFs on PyEnsembl genomes
|
|
5
5
|
Author: OpenVax
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -130,11 +130,11 @@ immunopeptidomics: peptides eluted from HLA molecules.
|
|
|
130
130
|
|
|
131
131
|
| Species | Noncanonical ORFs | Sources |
|
|
132
132
|
| --- | ---: | --- |
|
|
133
|
-
| Human | 7,264 bundled;
|
|
134
|
-
| Mouse |
|
|
135
|
-
| Zebrafish |
|
|
136
|
-
| C. elegans |
|
|
137
|
-
| Yeast | 1,
|
|
133
|
+
| Human | 7,264 bundled; 69,286 with `nc_orf_sources="all"` | GENCODE; optionally Chang et al. 2025 and Yang et al. 2024 Ribo-seq |
|
|
134
|
+
| Mouse | 60,707 | Chang et al. and Yang et al. Ribo-seq, OpenProt 2.2 MS |
|
|
135
|
+
| Zebrafish | 15,491 | Yang et al. Ribo-seq |
|
|
136
|
+
| C. elegans | 4,035 | Yang et al. Ribo-seq |
|
|
137
|
+
| Yeast | 1,369 | Yang et al. Ribo-seq |
|
|
138
138
|
| Dog | none: no public dog Ribo-seq or ncORF MS exists | |
|
|
139
139
|
|
|
140
140
|
Human's bundled catalogue needs no setup. For the others, `pip install
|
|
@@ -161,6 +161,11 @@ combined.save("human-all-proteins.proteome.json.gz") # Complete provenance.
|
|
|
161
161
|
|
|
162
162
|
nc_only = transcriptome.proteome(reference_cds=False, nc_orf_sources="all")
|
|
163
163
|
nc_only.write_fasta("human-reference-ncorfs.fasta")
|
|
164
|
+
|
|
165
|
+
# A peptide-search policy can exclude short products without deleting their ORF models.
|
|
166
|
+
search_reference = transcriptome.proteome(
|
|
167
|
+
nc_orf_sources="all", min_protein_length=5
|
|
168
|
+
)
|
|
164
169
|
```
|
|
165
170
|
|
|
166
171
|
For sample-specific altered sequences, `DerivedProtein` records the supplied
|
|
@@ -95,11 +95,11 @@ immunopeptidomics: peptides eluted from HLA molecules.
|
|
|
95
95
|
|
|
96
96
|
| Species | Noncanonical ORFs | Sources |
|
|
97
97
|
| --- | ---: | --- |
|
|
98
|
-
| Human | 7,264 bundled;
|
|
99
|
-
| Mouse |
|
|
100
|
-
| Zebrafish |
|
|
101
|
-
| C. elegans |
|
|
102
|
-
| Yeast | 1,
|
|
98
|
+
| Human | 7,264 bundled; 69,286 with `nc_orf_sources="all"` | GENCODE; optionally Chang et al. 2025 and Yang et al. 2024 Ribo-seq |
|
|
99
|
+
| Mouse | 60,707 | Chang et al. and Yang et al. Ribo-seq, OpenProt 2.2 MS |
|
|
100
|
+
| Zebrafish | 15,491 | Yang et al. Ribo-seq |
|
|
101
|
+
| C. elegans | 4,035 | Yang et al. Ribo-seq |
|
|
102
|
+
| Yeast | 1,369 | Yang et al. Ribo-seq |
|
|
103
103
|
| Dog | none: no public dog Ribo-seq or ncORF MS exists | |
|
|
104
104
|
|
|
105
105
|
Human's bundled catalogue needs no setup. For the others, `pip install
|
|
@@ -126,6 +126,11 @@ combined.save("human-all-proteins.proteome.json.gz") # Complete provenance.
|
|
|
126
126
|
|
|
127
127
|
nc_only = transcriptome.proteome(reference_cds=False, nc_orf_sources="all")
|
|
128
128
|
nc_only.write_fasta("human-reference-ncorfs.fasta")
|
|
129
|
+
|
|
130
|
+
# A peptide-search policy can exclude short products without deleting their ORF models.
|
|
131
|
+
search_reference = transcriptome.proteome(
|
|
132
|
+
nc_orf_sources="all", min_protein_length=5
|
|
133
|
+
)
|
|
129
134
|
```
|
|
130
135
|
|
|
131
136
|
For sample-specific altered sequences, `DerivedProtein` records the supplied
|
|
@@ -21,11 +21,11 @@ The packaged registry builds each catalogue from its sources' own files:
|
|
|
21
21
|
|
|
22
22
|
| Species | Catalogues | ORFs |
|
|
23
23
|
| --- | --- | ---: |
|
|
24
|
-
| Mouse | [OpenProt's MS-supported ORFs](#mouse-orfs-from-openprot), [Chang et al.'s](#mouse-ribo-seq-orfs-chang-et-al) and [Yang et al.'s](#mouse-riborf-orfs-yang-et-al) Ribo-seq ORFs |
|
|
25
|
-
| Human | the bundled GENCODE set; optionally [Chang et al.'s and Yang et al.'s Ribo-seq ORFs](#human-ribo-seq-orfs-optional) | 7,264;
|
|
26
|
-
| Zebrafish | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) |
|
|
27
|
-
| C. elegans | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) |
|
|
28
|
-
| Yeast | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) | 1,
|
|
24
|
+
| Mouse | [OpenProt's MS-supported ORFs](#mouse-orfs-from-openprot), [Chang et al.'s](#mouse-ribo-seq-orfs-chang-et-al) and [Yang et al.'s](#mouse-riborf-orfs-yang-et-al) Ribo-seq ORFs | 60,707 merged |
|
|
25
|
+
| Human | the bundled GENCODE set; optionally [Chang et al.'s and Yang et al.'s Ribo-seq ORFs](#human-ribo-seq-orfs-optional) | 7,264; 69,286 with both |
|
|
26
|
+
| Zebrafish | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) | 15,491 |
|
|
27
|
+
| C. elegans | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) | 4,035 |
|
|
28
|
+
| Yeast | [Yang et al.'s Ribo-seq ORFs](#zebrafish-c-elegans-and-yeast) | 1,369 |
|
|
29
29
|
| Dog | [none exists](#dog) | 0 |
|
|
30
30
|
|
|
31
31
|
`orfdata setup --species mouse` (or zebrafish, worm, yeast) installs a
|
|
@@ -88,8 +88,8 @@ already installed, repaired or skipped. If one fails, the rest are still
|
|
|
88
88
|
installed and it exits with status 1, naming each failure; in Python,
|
|
89
89
|
`install_species` raises `InstallError`, whose `result` holds the same
|
|
90
90
|
report. `load_catalog(species="mouse")` then merges the three,
|
|
91
|
-
in this order, into
|
|
92
|
-
Ribo-seq ORFs of Chang et al. and
|
|
91
|
+
in this order, into 60,707 ORFs: 2,976 MS-supported OpenProt ORFs, 16,484
|
|
92
|
+
Ribo-seq ORFs of Chang et al. and 51,991 of Yang et al. 10,448 of Chang's and
|
|
93
93
|
Yang's ORFs are the same ORF (28 of them also in OpenProt), and 296 OpenProt
|
|
94
94
|
ORFs have Ribo-seq support from one or both, 242 from Yang et al. alone. On
|
|
95
95
|
Ensembl 115 (GRCm39):
|
|
@@ -97,11 +97,11 @@ Ensembl 115 (GRCm39):
|
|
|
97
97
|
| Evidence | Selected | Added to the proteome |
|
|
98
98
|
| --- | ---: | ---: |
|
|
99
99
|
| `"ms"` (default) | 2,976 | 2,854 |
|
|
100
|
-
| `RiboSeq()` |
|
|
100
|
+
| `RiboSeq()` | 58,109 | 57,992 |
|
|
101
101
|
| `RiboSeq() & MS()` | 378 | 371 |
|
|
102
|
-
| `None` |
|
|
102
|
+
| `None` | 60,707 | 60,475 |
|
|
103
103
|
|
|
104
|
-
Loading the merged catalogue takes about 10 seconds and
|
|
104
|
+
Loading the merged catalogue takes about 10 seconds and 1.1 GB of memory, once
|
|
105
105
|
per process, whichever evidence is selected. On GRCm38 and NCBIM37 all three
|
|
106
106
|
are [lifted automatically](#every-assembly-of-a-species).
|
|
107
107
|
|
|
@@ -138,32 +138,39 @@ ATG, CTG, GTG or TTG. Its types are uORF (8,294), lncORF (3,576), uoORF
|
|
|
138
138
|
`riborf-mouse` holds the mouse ORFs that RibORF 2.0 identified as translated in
|
|
139
139
|
the Ribo-seq data of Yang et al. (Nat Commun 2024,
|
|
140
140
|
[doi:10.1038/s41467-024-46240-9](https://doi.org/10.1038/s41467-024-46240-9);
|
|
141
|
-
224 samples in 26 GEO series)
|
|
142
|
-
|
|
143
|
-
|
|
141
|
+
224 samples in 26 GEO series): uORF (26,052), lncORF (8,149), iORF (6,155),
|
|
142
|
+
dORF (5,174), uoORF (3,157), N-terminal truncation (2,059), doORF (670) and
|
|
143
|
+
extension (575). The source's ouORF, odORF and
|
|
144
144
|
noncoding types take Chang et al.'s names, so `--biotype uoORF` finds both
|
|
145
145
|
sources' overlapping uORFs. Annotated CDSs, likely sequencing errors,
|
|
146
|
-
stop-codon readthrough
|
|
147
|
-
|
|
146
|
+
and stop-codon readthrough are not imported. Release 2 retains 11,902 valid
|
|
147
|
+
ORFs shorter than five residues. Release 1, which applied a five-residue import
|
|
148
|
+
floor, remains available explicitly as `--version 1`.
|
|
148
149
|
|
|
149
150
|
- **Placement.** The source gives mm10 / GENCODE vM25 transcript coordinates
|
|
150
151
|
(a 1-based start, an exclusive end) and no proteins. Rather than lift mm10
|
|
151
152
|
through a restricted chain, each ORF is placed on the same transcript in
|
|
152
153
|
Ensembl 107 GRCm39 and translated from that transcript's sequence. Of the
|
|
153
|
-
|
|
154
|
-
reason: 1,
|
|
155
|
-
vM25,
|
|
156
|
-
neither FASTA,
|
|
154
|
+
54,128 non-skipped source rows, 51,991 resolve. Listed as unresolved, with the
|
|
155
|
+
reason: 1,642 rows on transcripts that changed length since GENCODE
|
|
156
|
+
vM25, 399 on transcripts that Ensembl 107 has in its GTF but in
|
|
157
|
+
neither FASTA, 95 on transcripts that are gone, and one whose
|
|
157
158
|
transcript's sequence changed at the same length. Placing through the
|
|
158
159
|
transcript gives the same coding path as lifting the source's mm10 blocks
|
|
159
160
|
through UCSC's chain for all but 2, in a duplicated region of chr14 where
|
|
160
|
-
the chain is ambiguous.
|
|
161
|
+
the chain is ambiguous. Of the 12,222 source rows below five residues,
|
|
162
|
+
11,902 resolve and 320 carry one of the same explicit failures. In all,
|
|
163
|
+
51,881 place on Ensembl 115.
|
|
161
164
|
- **Sources.** Supplementary Data 3 (CC BY 4.0) and Ensembl 107's GTF, cDNA
|
|
162
165
|
and ncRNA FASTAs; about 115 MB, of which the 32 MB GTF is the one Chang et
|
|
163
166
|
al.'s catalogue uses, so `orfdata setup` downloads it once. Building needs
|
|
164
167
|
`orfdata[build-data]`.
|
|
165
168
|
- **Evidence.** Presence in the source's set is aggregate Ribo-seq support:
|
|
166
169
|
`RiboSeq()` selects every ORF, `RiboSeq(min_studies=2)` none.
|
|
170
|
+
- **Length policy.** `catalog.query(min_protein_length=5)` and
|
|
171
|
+
`Proteome.build(..., min_protein_length=5)` reproduce a downstream
|
|
172
|
+
five-residue selection without removing short models from the catalogue.
|
|
173
|
+
Proteome layers record the threshold and number filtered.
|
|
167
174
|
- **IDs.** `riborf_` and the GRCm39 start and stop, such as
|
|
168
175
|
`riborf_4_120262600_120262620_+`, never a name Chang et al. use. Two paths
|
|
169
176
|
with the same start and stop add their transcript (`…@ENSMUST00000226495.2`),
|
|
@@ -268,8 +275,8 @@ load_catalog(species="human", catalogs=["ncorf-mammals-human"]) # Just one
|
|
|
268
275
|
such as `nc_orf_sources="ms"` also query every compatible dataset; use
|
|
269
276
|
`nc_orf_sources="bundled"` for only the bundled set. They merge after the bundled
|
|
270
277
|
catalogue, Chang et al.'s before Yang et al.'s as for mouse, so an ORF in
|
|
271
|
-
several keeps the first one's ID. Together they give
|
|
272
|
-
takes about a minute and
|
|
278
|
+
several keeps the first one's ID. Together they give 69,286 ORFs, of which 69,162 place on Ensembl 115; that
|
|
279
|
+
takes about a minute and several GB of memory, against about a second for the
|
|
273
280
|
bundled catalogue alone. Neither adds MS evidence, so `"ms"` selects the same
|
|
274
281
|
ORFs either way.
|
|
275
282
|
|
|
@@ -282,10 +289,11 @@ ORFs either way.
|
|
|
282
289
|
- **`riborf-human`:** the human ORFs of [Yang et
|
|
283
290
|
al.](#mouse-riborf-orfs-yang-et-al), from 136 samples in 30 GEO series, on
|
|
284
291
|
GENCODE V39, placed through the same Ensembl 105 transcripts (GENCODE V39
|
|
285
|
-
is Ensembl 105):
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
iORF (
|
|
292
|
+
is Ensembl 105): 62,853 of 62,962 non-skipped rows; 109 are on transcripts
|
|
293
|
+
with no sequence in Ensembl 105's FASTAs. The catalogue includes 11,679
|
|
294
|
+
valid records below five residues. Types: uORF (28,981), lncORF (12,938),
|
|
295
|
+
iORF (5,990), dORF (4,907), uoORF (4,679), N-terminal truncation (3,574),
|
|
296
|
+
extension (1,046) and doORF (738).
|
|
289
297
|
|
|
290
298
|
`catalogs` takes `None` (the species' default set), `"all"`, or catalogue
|
|
291
299
|
names, `"bundled"` among them. `orfdata catalogs status` marks optional
|
|
@@ -298,25 +306,25 @@ orfdata setup --species zebrafish # or worm, or yeast
|
|
|
298
306
|
```
|
|
299
307
|
|
|
300
308
|
Yang et al.'s RibORF 2.0 ORFs of [the mouse catalogue's
|
|
301
|
-
kind](#mouse-riborf-orfs-yang-et-al),
|
|
302
|
-
species' sheet of Supplementary Data 3, imported the same way:
|
|
309
|
+
kind](#mouse-riborf-orfs-yang-et-al), including valid short source models, from
|
|
310
|
+
each species' sheet of Supplementary Data 3, imported the same way:
|
|
303
311
|
|
|
304
|
-
| Catalogue | Samples (GEO series) | Placed through | ORFs |
|
|
312
|
+
| Catalogue | Samples (GEO series) | Placed through | ORFs | Below 5 aa |
|
|
305
313
|
| --- | --- | --- | ---: | ---: |
|
|
306
|
-
| `riborf-zebrafish` | 20 (2) | Ensembl 115 GRCz11 transcripts |
|
|
307
|
-
| `riborf-worm` | 39 (1) | Ensembl 105 WBcel235 transcripts |
|
|
308
|
-
| `riborf-yeast` | 5 (1) | the R64-1-1 genome (sacCer3) | 1,
|
|
314
|
+
| `riborf-zebrafish` | 20 (2) | Ensembl 115 GRCz11 transcripts | 15,491 | 5,732 |
|
|
315
|
+
| `riborf-worm` | 39 (1) | Ensembl 105 WBcel235 transcripts | 4,035 | 1,186 |
|
|
316
|
+
| `riborf-yeast` | 5 (1) | the R64-1-1 genome (sacCer3) | 1,369 | 241 |
|
|
309
317
|
|
|
310
318
|
- **Zebrafish:** every source transcript has the same length in Ensembl 100
|
|
311
319
|
to 115, so the catalogue uses 115. 18 rows have ambiguous bases in the ORF
|
|
312
|
-
and are left out. Types:
|
|
313
|
-
(
|
|
320
|
+
and are left out. Types: uORF (6,168), N-terminal truncation (3,816), iORF
|
|
321
|
+
(2,696), dORF (1,623), lncORF (501), uoORF (343), extension (224) and doORF
|
|
322
|
+
(120).
|
|
314
323
|
- **C. elegans:** the source's transcripts match Ensembl 100 and 105, and
|
|
315
|
-
WormBase changed many models after, so the catalogue uses 105; all
|
|
316
|
-
place there
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
(77).
|
|
324
|
+
WormBase changed many models after, so the catalogue uses 105; all 4,035
|
|
325
|
+
place there. Transcript names with dots of their own (`F45H11.11.1`) are
|
|
326
|
+
kept whole. Types: iORF (1,525), uORF (725), truncation (614), extension
|
|
327
|
+
(556), lncORF (158), uoORF (249), doORF (121) and dORF (87).
|
|
320
328
|
- **Yeast:** the source's yeast transcripts carry UTRs, and some are unstable
|
|
321
329
|
transcripts (CUTs, SUTs), none of which Ensembl's yeast annotation has; its
|
|
322
330
|
transcripts span only the CDS. So each ORF is placed from its genomic span
|
|
@@ -330,8 +338,8 @@ species' sheet of Supplementary Data 3, imported the same way:
|
|
|
330
338
|
Only the 171 ORFs on an Ensembl transcript, such as truncations and iORFs,
|
|
331
339
|
place on a PyEnsembl genome; the rest (uORFs in 5′ UTRs, ORFs on CUTs) stay
|
|
332
340
|
in the catalogue, queryable by region and gene, until ORFs on source-defined
|
|
333
|
-
RNAs are supported (#66). Types: uORF (
|
|
334
|
-
truncation (
|
|
341
|
+
RNAs are supported (#66). Types: uORF (393), dORF (267), lncORF (260), iORF
|
|
342
|
+
(139), truncation (138), extension (67), uoORF (58) and doORF (47).
|
|
335
343
|
|
|
336
344
|
## Dog
|
|
337
345
|
|
|
@@ -381,9 +389,7 @@ With evidence `None` (every catalogue ORF), each assembly gets:
|
|
|
381
389
|
| Human Ensembl 75, GRCh37 | lifted, 1 hop | 7,247 | 6,857 | 270 transcripts absent, 108 paths changed, 1 on a transcript with a different protein |
|
|
382
390
|
| Human Ensembl 54, NCBI36 | lifted, 1 hop | 7,253 | 4,195 | 2,708 transcripts absent, 2 on a transcript with a different protein |
|
|
383
391
|
| Human Ensembl rapid 2022_07, T2T-CHM13v2.0 | lifted, 1 hop | 7,208 | 6,767 | 383 on a transcript with a different protein, 58 on no transcript, 56 not lifted |
|
|
384
|
-
| Mouse Ensembl 115, GRCm39 | OpenProt, Chang et al. and Yang et al. |
|
|
385
|
-
| Mouse Ensembl 102, GRCm38 | all three lifted, 1 hop | 48,800 | 48,169 | 434 transcripts absent, 5 not lifted |
|
|
386
|
-
| Mouse Ensembl 67, NCBIM37 | all three lifted, 2 hops | 48,642 | 38,105 | 9,217 transcripts absent, 163 not lifted |
|
|
392
|
+
| Mouse Ensembl 115, GRCm39 | OpenProt, Chang et al. and Yang et al. | 60,707 | 60,475 | 232 fail transcript/path/sequence binding checks |
|
|
387
393
|
|
|
388
394
|
Older annotations lack many of the transcripts the sources name, so fewer ORFs
|
|
389
395
|
place; the rest, and any that didn't lift, are listed with the reason, never
|
|
@@ -48,10 +48,10 @@ Calibration and uncertainty remain attached to observations:
|
|
|
48
48
|
## ORF evidence and ribosome profiling
|
|
49
49
|
|
|
50
50
|
The separate existence-evidence catalogue contains 7,264 human noncanonical
|
|
51
|
-
ORFs, including 2,186 with reported MS support. Mouse has
|
|
51
|
+
ORFs, including 2,186 with reported MS support. Mouse has 60,707 ORFs: Ribo-seq ORFs
|
|
52
52
|
from Chang et al. and Yang et al., and 2,976 OpenProt 2.2 ORFs with at least
|
|
53
53
|
two unique MS peptides, built from their sources' files. Yang et al.'s Ribo-seq ORFs
|
|
54
|
-
cover zebrafish (
|
|
54
|
+
cover zebrafish (15,491), C. elegans (4,035) and yeast (1,369), and with Chang et al.'s
|
|
55
55
|
are optional human catalogues; dog has no experimental ncORF catalogue, because no
|
|
56
56
|
dog Ribo-seq or ncORF MS search is public ([details](catalogs.md#dog)). Its
|
|
57
57
|
ribosome evidence and pooled PSM counts are not sample-level ribosome
|
|
@@ -103,6 +103,11 @@ That writes `ncorfs/annotation.gtf`, `ncorfs/transcripts.fasta` and
|
|
|
103
103
|
gene, with the spliced coding sequence and the translation. In Python the same
|
|
104
104
|
is `proteome.write_annotation("ncorfs")`.
|
|
105
105
|
|
|
106
|
+
Catalogue imports preserve short translated ORFs for variant annotation. If a
|
|
107
|
+
particular peptide-search workflow requires a length floor, add
|
|
108
|
+
`--min-protein-length 5`; the generated proteome records the explicit policy and
|
|
109
|
+
its omitted count, while the underlying catalogue remains complete.
|
|
110
|
+
|
|
106
111
|
```python
|
|
107
112
|
from pyensembl import Genome
|
|
108
113
|
|
|
@@ -67,17 +67,20 @@ orfdata proteome --species human --release 115 --nc-orf-sources ms --output huma
|
|
|
67
67
|
|
|
68
68
|
| `nc_orf_sources=` | Selects ORFs with | Human ORFs | Encoded in Ensembl 115 |
|
|
69
69
|
| --- | --- | ---: | ---: |
|
|
70
|
-
| `"ribosome"` or `"riboseq"` | Ribosome profiling across all datasets |
|
|
70
|
+
| `"ribosome"` or `"riboseq"` | Ribosome profiling across all datasets | 69,286 | 69,162 |
|
|
71
71
|
| `"ms"` | Any supporting MS peptide | 2,186 | 2,181 |
|
|
72
72
|
| `"immunopeptidomics"` | Peptides eluted from MHC (in human, HLA) molecules | 1,881 | 1,879 |
|
|
73
73
|
| `"proteomics"` | Peptides from digested cellular proteins | 73 | 72 |
|
|
74
|
-
| `"all"` | Every compatible dataset |
|
|
74
|
+
| `"all"` | Every compatible dataset | 69,286 | 69,162 |
|
|
75
75
|
|
|
76
76
|
Use `nc_orf_sources="bundled"` for the bundled dataset alone, or a list of
|
|
77
77
|
names such as `["bundled", "ncorf-mammals-human"]` for a subset. Evidence presets
|
|
78
78
|
and `"all"` require all compatible datasets; install human's optional datasets
|
|
79
79
|
once with `orfdata setup --species human --catalogs all`. Missing resources
|
|
80
80
|
produce installation instructions. The defaults still add no ncORFs.
|
|
81
|
+
RibORF source catalogues include valid 1–4-residue ORFs. Apply a downstream
|
|
82
|
+
policy explicitly with `min_protein_length=5`, or CLI
|
|
83
|
+
`--min-protein-length 5`, when a peptide-search reference should omit them.
|
|
81
84
|
|
|
82
85
|
Most MS support in the bundled human catalogue comes from
|
|
83
86
|
immunopeptidomics. A presented peptide shows that the ORF was translated; it
|
|
@@ -116,11 +119,11 @@ transcript alongside them.
|
|
|
116
119
|
|
|
117
120
|
| Species | Annotated proteins | Noncanonical ORFs |
|
|
118
121
|
| --- | --- | --- |
|
|
119
|
-
| Human | From PyEnsembl; T2T-CHM13 from a pinned Ensembl annotation | 7,264 GRCh38 ORFs, bundled; lifted to GRCh37, NCBI36 and [T2T-CHM13](catalogs.md#t2t-chm13).
|
|
120
|
-
| Mouse | From PyEnsembl |
|
|
121
|
-
| Zebrafish | From PyEnsembl |
|
|
122
|
-
| C. elegans | From PyEnsembl |
|
|
123
|
-
| Budding yeast | From PyEnsembl | 1,
|
|
122
|
+
| Human | From PyEnsembl; T2T-CHM13 from a pinned Ensembl annotation | 7,264 GRCh38 ORFs, bundled; lifted to GRCh37, NCBI36 and [T2T-CHM13](catalogs.md#t2t-chm13). 69,286 with the [optional Ribo-seq catalogues](catalogs.md#human-ribo-seq-orfs-optional) of Chang et al. and Yang et al. (`nc_orf_sources="all"`) |
|
|
123
|
+
| Mouse | From PyEnsembl | 60,707 ORFs on GRCm39: Ribo-seq ORFs of Chang et al. and Yang et al., and 2,976 MS-supported ones (OpenProt 2.2), [built locally](catalogs.md#mouse) with `orfdata setup --species mouse`; lifted to GRCm38 and NCBIM37 |
|
|
124
|
+
| Zebrafish | From PyEnsembl | 15,491 GRCz11 Ribo-seq ORFs of Yang et al., [built locally](catalogs.md#zebrafish-c-elegans-and-yeast) |
|
|
125
|
+
| C. elegans | From PyEnsembl | 4,035 WBcel235 Ribo-seq ORFs of Yang et al., built locally |
|
|
126
|
+
| Budding yeast | From PyEnsembl | 1,369 R64-1-1 Ribo-seq ORFs of Yang et al., built locally; 171 lie on Ensembl's transcripts |
|
|
124
127
|
| Dog | From PyEnsembl | None: [no public dog Ribo-seq or ncORF MS exists](catalogs.md#dog) |
|
|
125
128
|
|
|
126
129
|
Other assemblies use a catalogue lifted to them once `orfdata chains download`
|
|
@@ -146,6 +146,22 @@ A list of evidence names selects ORFs with any of them:
|
|
|
146
146
|
MS peptide, unlike `"ms"`, which also counts unclassified MS. For ORFs that
|
|
147
147
|
need two kinds of evidence at once, combine rules with `&`, below.
|
|
148
148
|
|
|
149
|
+
Length is a separate consumer policy, never an import rule. RibORF catalogues
|
|
150
|
+
retain valid short source ORFs because they can matter for variant annotation
|
|
151
|
+
even when they are unsuitable for a peptide search. Use
|
|
152
|
+
`catalog.query(min_protein_length=5)`, `extra_orfs(...,
|
|
153
|
+
min_protein_length=5)`, or:
|
|
154
|
+
|
|
155
|
+
```python
|
|
156
|
+
search_reference = transcriptome.proteome(
|
|
157
|
+
nc_orf_sources="ribosome", min_protein_length=5
|
|
158
|
+
)
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
The corresponding CLI option is `--min-protein-length 5`. A proteome snapshot's
|
|
162
|
+
ncORF layer records both the threshold and `length_filtered`, so the omission is
|
|
163
|
+
auditable and changes the cache identity. Reference CDS proteins are unaffected.
|
|
164
|
+
|
|
149
165
|
### Separate Ribo-seq and MS stringency
|
|
150
166
|
|
|
151
167
|
For more control, pass a rule. `RiboSeq(min_studies=n)` needs ribosome
|
|
@@ -588,6 +588,7 @@ class ORFCatalog:
|
|
|
588
588
|
require_reviewed=False,
|
|
589
589
|
require_resolved=False,
|
|
590
590
|
biotype=None,
|
|
591
|
+
min_protein_length=None,
|
|
591
592
|
include_initiation_context=False,
|
|
592
593
|
):
|
|
593
594
|
"""Filter records; genomic intervals are 1-based inclusive and spliced.
|
|
@@ -602,6 +603,8 @@ class ORFCatalog:
|
|
|
602
603
|
scope, not unique in every normal human proteome.
|
|
603
604
|
``require_resolved`` excludes aggregate-only support: MS needs a peptide
|
|
604
605
|
observation and ribosome evidence needs a named study.
|
|
606
|
+
``min_protein_length`` is an explicit consumer selection in amino acids;
|
|
607
|
+
the catalogue itself retains every representable source ORF.
|
|
605
608
|
``include_initiation_context`` also intersects placed spliced start
|
|
606
609
|
flanks, for example an upstream Kozak SNV. The default remains coding
|
|
607
610
|
blocks only. It does not include introns between context bases.
|
|
@@ -619,6 +622,8 @@ class ORFCatalog:
|
|
|
619
622
|
raise ValueError(f"Expected genome build {self.genome_build}, got {genome_build}")
|
|
620
623
|
rule = evidence_rule(evidence, require_unique=require_unique, require_reviewed=require_reviewed,
|
|
621
624
|
require_resolved=require_resolved)
|
|
625
|
+
if min_protein_length is not None:
|
|
626
|
+
_positive_integer(min_protein_length, "min_protein_length")
|
|
622
627
|
|
|
623
628
|
return tuple(
|
|
624
629
|
r
|
|
@@ -642,6 +647,7 @@ class ORFCatalog:
|
|
|
642
647
|
)
|
|
643
648
|
)
|
|
644
649
|
and (biotype is None or any(m.biotype == biotype for m in r.members or (r,)))
|
|
650
|
+
and (min_protein_length is None or len(r.protein_sequence) >= min_protein_length)
|
|
645
651
|
and (rule is None or rule.matches(r.evidence))
|
|
646
652
|
)
|
|
647
653
|
|
|
@@ -53,11 +53,11 @@ def _builder(manifest):
|
|
|
53
53
|
from .sources.ncorf_mammals import import_orfs
|
|
54
54
|
|
|
55
55
|
return lambda inputs, output: import_orfs(inputs, output, manifest)
|
|
56
|
-
if importer
|
|
56
|
+
if importer in ("riborf-v1", "riborf-v2"):
|
|
57
57
|
from .sources.riborf import import_orfs
|
|
58
58
|
|
|
59
59
|
return lambda inputs, output: import_orfs(inputs, output, manifest)
|
|
60
|
-
if importer
|
|
60
|
+
if importer in ("riborf-genome-v1", "riborf-genome-v2"):
|
|
61
61
|
from .sources.riborf import import_genome_orfs
|
|
62
62
|
|
|
63
63
|
return lambda inputs, output: import_genome_orfs(inputs, output, manifest)
|
|
@@ -120,6 +120,8 @@ def _add_query_arguments(parser, *, catalog_path=True):
|
|
|
120
120
|
parser.add_argument("--biotype", help="Source ORF class, as each source labels it: uORF, lncRNA, intORF, dORF "
|
|
121
121
|
"(GENCODE, human); uORF, uoORF, iORF, dORF, doORF, lncORF (mouse Ribo-seq; "
|
|
122
122
|
"RibORF also truncation, extension); AltProt, Isoform (OpenProt)")
|
|
123
|
+
parser.add_argument("--min-protein-length", type=int, metavar="AA",
|
|
124
|
+
help="Select ORFs with at least this many amino acids; source catalogues stay unfiltered")
|
|
123
125
|
parser.add_argument("--region", help="1-based inclusive interval: chr7:66205483-66205522")
|
|
124
126
|
parser.add_argument(
|
|
125
127
|
"--position", help="Map a 1-based variant position: chr7:66205483 (JSON only)"
|
|
@@ -228,6 +230,7 @@ def _query(args, parser, catalog_loader):
|
|
|
228
230
|
"transcript_id": args.transcript,
|
|
229
231
|
"evidence": _rule(args, args.evidence, "--evidence"),
|
|
230
232
|
"biotype": args.biotype,
|
|
233
|
+
"min_protein_length": args.min_protein_length,
|
|
231
234
|
"genome_build": args.genome_build,
|
|
232
235
|
"include_initiation_context": args.include_initiation_context or bool(args.ref),
|
|
233
236
|
}
|