Strict colon loci: colon keys, peaks converted at import - #21
Merged
Merged
Conversation
Loci are recognized only in colon form, chr:start-end, through
legume-genomic-types 0.5.0; keys become {chr}:{start}-{end}, chr prefix
dropped in any case and case kept. Outside spellings are converted once
where names enter.
- feature_names: locus_key re-exported from genomic-types as the one
answer to "is this a locus, and under which key"; the overlap map and
every per-name path key a row the same way.
- The gene rule never cuts a locus (tagged or not) and keeps names whose
symbol would be all digits (chr1_100_200), so such rows cannot
collapse onto one key.
- auto_detect warns when an axis reads as intervals only in a non-colon
spelling.
- GeneIndex resolves a locus query only against locus rows by key, case
kept, including rows whose '/'-core is a locus; gene queries never land
on locus rows.
- colon_peak_names rewrites peak rows to chr:start-end at import: by
feature type for 10x h5/zarr, features.tsv and h5ad, or for an untyped
list when every row reads as an interval.
Release 0.7.0.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Loci are recognized only in colon form,
chr:start-end, through legume-genomic-types 0.5.0. Outside spellings are converted once where names enter, and everything inside works on colon keys.Keys
{chr}:{start}-{end}:chrprefix dropped in any case, the rest's case kept (chrX:0-100,CHRX:0-100andX:0-100all giveX:0-100).feature_names::locus_key(re-exported from genomic-types) is the one answer to "is this a locus, and under which key". The overlap map and every per-name path now key a row the same way.Matching
chr1_100_200), so such rows cannot collapse onto one key.auto_detectwarns when an axis reads as intervals only in a non-colon spelling.GeneIndexresolves a locus query only against locus rows by key, case kept, including rows whose/-core is a locus. Gene queries never land on locus rows.Import boundary
colon_peak_namesrewrites peak rows tochr:start-end(fromchr1-100-200,chr1_100_200,chr1:100_200). Rows count as peaks by feature type (peak / ATAC) for 10x h5/zarr,features.tsvand h5ad, or for an untyped list when every row reads as an interval.Breaking (0.7.0)
X_0_100toX:0-100. Names likechr1_100_200stored in existing backends are no longer loci.parse_locusaccepts colon form only.Version 0.7.0.