Skip to content
forked from google/nucleus

Python and C++ code for reading and writing genomics data.

License

Notifications You must be signed in to change notification settings

pichuan/nucleus

 
 

Repository files navigation

Nucleus

Nucleus is a library of Python and C++ code designed to make it easy to read, write and analyze data in common genomics file formats like SAM and VCF. In addition, Nucleus enables painless integration with the TensorFlow machine learning framework, as anywhere a genomics file is consumed or produced, a TensorFlow tfrecords file may be substituted.

Poll

Which of these would most increase your usage of Nucleus?

Installation

For Ubuntu 14, Ubuntu 16 and Debian 9 systems, installation is easy: just run

source install.sh

For all other systems, you will need to first install CLIF by following the instructions at https://github.com/google/clif#installation before running install.sh.

Note that install.sh extensively depends on apt-get, so it is unlikely to run without extensive modifications on non-Debian-based systems.

Finally, Nucleus depends on TensorFlow and by default, install.sh will install a CPU-only version of a stable TensorFlow release (currently 1.7). If that isn't what you want, there are several other installation options that can be enabled with a simple edit to install.sh.

Running install.sh will build all of Nucleus's programs and libraries. You can find the generated binaries under bazel-bin/nucleus. If in addition to installing Nucleus you would like to run its tests, execute

bazel test -c opt $COPT_FLAGS nucleus/...

Documentation

Contributing

Interested in contributing? See CONTRIBUTING.

Support

The Genomics team in Google Brain actively supports Nucleus and are always interested in improving its quality. If you run into an issue, please report the problem on our Issue tracker. Be sure to add enough detail to your report that we can reproduce the problem and fix it. We encourage including links to snippets of BAM/VCF/etc files that provoke the bug, if possible. Depending on the severity of the issue we may patch Nucleus immediately with the fix or roll it into the next release.

Version

This is Nucleus 0.1.0. Nucleus follows semantic versioning.

License

Nucleus is licensed under the terms of the Apache 2 license.

History

Nucleus grew out of the DeepVariant project.

Disclaimer

This is not an official Google product.

About

Python and C++ code for reading and writing genomics data.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 53.5%
  • C++ 45.4%
  • Shell 1.1%