Skip to content

Commit

Permalink
Duckdb query engine (#10)
Browse files Browse the repository at this point in the history
* added basic interface for query engine

* Added explanations

* added query step protocol to query engine interface

* Update duckdb version to 0.9.1

* Add support for DuckDBPyRelation in dataframe
models and query engine

* added examples to query engine interface

* Refactor RegionFilter to Snipper

* Add GenomicDataSchema protocol and implement
position field and contact order methods

* added single region selection implementation

* Add anchor validation in Snipper class

* blackify

* Refactor code and fix imports

* pixels snipping tests passing

* Refactor code formatting

* pylint and black

* added documentation for snipping

* updated documentation

* renamed region columns

* untested offset transformation

* regionoffset working

* Remove unused imports and fixtures

* Refactor imports and fix formatting issues

* Update imports and ignore additional flake8 warnings

* Add tests for offset aggregation functions in query engine

* added additional test for column name

* added tests for aggregation on dense input

* added addiitonal tests for offsetaggregation

* Add region_number attribute to QueryStepDataSchema and ContactSchema; implemented new aggregation method

* added documentation

* updated documenatation page

* added use case for contact counting

* implemented PR changes

* added duckdb parquet reader function

* added check for data mode

* added case whne regions are nested

* renamed BasicQuery, QueryResult and Snipper

* fixed typos in query_engine_interface

* code review comments for uery engine usage

* added string parsing for enums

* added capability to specify a subset of positions for offsetaggregation

* added explicit rejection of contacts to offsetaggregation

* added expliict windowsize handling

* renamed window size

* Renamed offset to distance
  • Loading branch information
Mittmich authored Feb 22, 2024
1 parent 6f0e2ea commit 1944acb
Show file tree
Hide file tree
Showing 34 changed files with 5,299 additions and 905 deletions.
35 changes: 35 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
repos:
- repo: https://github.com/asottile/reorder-python-imports
rev: v3.12.0
hooks:
- id: reorder-python-imports
exclude: ^(pre_commit/resources/|testing/resources/python3_hooks_repo/)
args: [--py38-plus]
- repo: https://github.com/PyCQA/flake8
rev: 6.1.0
hooks:
- id: flake8
args: ["--ignore=E501,W503,W291"]
- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.7.1
hooks:
- id: mypy
additional_dependencies: [types-all]
exclude: ^testing/resources/
- repo: https://github.com/psf/black-pre-commit-mirror
rev: 23.12.1
hooks:
- id: black
# It is recommended to specify the latest version of Python
# supported by your project here, or alternatively use
# pre-commit's default_language_version, see
# https://pre-commit.com/#top_level-default_language_version
language_version: python3.11
- repo: local
hooks:
- id: pylint
name: pylint
entry: pylint
language: system
types: [python]
args: ["--disable=C0301,W0511"]
Loading

0 comments on commit 1944acb

Please sign in to comment.