aboutsummaryrefslogtreecommitdiff
path: root/gn3/genodb.py
AgeCommit message (Collapse)Author
2022-06-17gn3: genodb: Rename Matrix named tuple to GenotypeMatrix.Arun Isaac
* gn3/genodb.py (Matrix): Rename to GenotypeMatrix. (matrix): Update invocation of Matrix.
2022-06-17gn3: genodb: Allow retrieval of the entire genotype matrix.Arun Isaac
* gn3/genodb.py: Document nparray in the module docstring. (nparray): New function.
2022-06-17gn3: genodb: Read optimized storage for the current matrix.Arun Isaac
The genotype database now stores the current version of the matrix alone in a read-optimized form, while storing the older versions of the matrix in a more compressed form. We are only interested in the current version of the matrix. So, always use the read optimized storage. * gn3/genodb.py (Matrix)[row_pointers, column_pointers]: Delete fields. [array, transpose]: New fields. * gn3/genodb.py (matrix, row, column): Read from read-optimized storage. (vector_ref): Delete function.
2022-06-09gn3: genodb: Remove blank line in module docstring.Arun Isaac
* gn3/genodb.py: Remove blank line in module docstring.
2022-06-09gn3: genodb: Rewrite without classes.Arun Isaac
We rewrite genodb using only functions. This makes for much more readable code. * gn3/genodb.py: Rewrite without classes.
2022-06-08gn3: genodb: Support reading columns.Arun Isaac
* gn3/genodb.py (Matrix.__init__): Retrieve column pointers from database. (row): Abstract out vector access code to ... (Matrix.__vector): ... here. (Matrix.column): New method.
2022-06-08gn3: genodb: Read only the most recent genotype matrix.Arun Isaac
The genotype database format now supports versioning of matrices. So, we update genodb.py to return only the most recent genotype matrix. * gn3/genodb.py (GenotypeDatabase.matrix): Return only the most recent genotype matrix.
2022-06-08gn3: genodb: Open genotype database in read-only mode.Arun Isaac
* gn3/genodb.py (GenotypeDatabase.__init__): Open genotype database in read-only mode.
2022-06-08gn3: genodb: Do not create genotype database if it does not exist.Arun Isaac
* gn3/genodb.py (GenotypeDatabase.__init__): Do not create genotype database if it does not exist.
2022-06-08gn3: genodb: Decide on little endianness.Arun Isaac
It has been decided that the genotype database will use little endianness wherever applicable. * gn3/genodb.py (Matrix.__init__): Remove TODO note to decide on endianness.
2022-06-08gn3: genodb: Do not terminate database strings with null.Arun Isaac
* gn3/genodb.py (GenotypeDatabase.get_metadata, GenotypeDatabase.matrix): Do not terminate database strings with the null character.
2022-06-03gn3: Add genodb.Arun Isaac
genodb is a tiny library to read our new genotype database file format. * gn3/genodb.py: New file.