Code Monkey home page Code Monkey logo

Comments (3)

nsoranzo avatar nsoranzo commented on August 10, 2024 2

The docs are at https://bx-python.readthedocs.io/ , but that's mostly generated from the method/class docstrings, and species_to_lengths was not documented there, so thanks @rsharris for digging through the code!

from bx-python.

rsharris avatar rsharris commented on August 10, 2024 1

I don't know whether overall docs exist.

There is some documentation for species_to_lengthS in the code, in lib/bx/align/core.py, in the body of the Alignment class's constructor:

species_to_lengths is needed only for file formats that don't provide chromosome lengths;  it maps each species name to one of these:
  - the name of a file that contains a list of chromosome length pairs
  - a dict mapping chromosome names to their length
  - a single length value (useful when we just have one sequence and no chromosomes)

Because of the way axt describes positions for reverse-strand alignments, chromosome lengths are needed.

So, it's a dict that maps each of two species names (only two because axt only supports pairwise alignments) to either a filename or a dict that maps chromosome names to their length. The "single length value" variant can be used if you have an alignment of one sequence to the other and (I suppose) doesn't contain chromosome names (or in which the chromosome name is used instead of a species name).

The format of the "file that contains a list of chromosome length pairs" is described at the top of lib/bx/misc/readlengths/py.

As I recall, there's some assumption about sequence names having the form <species>.<chrom> .

from bx-python.

rsharris avatar rsharris commented on August 10, 2024 1

There's a 95% chance that species_to_lengths was part of my minor contributions to the package, circa 2005. So I was pretty sure that was documented somewhere, but it did take a little digging to locate it.

from bx-python.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.