Introduction¶
MZQC python library¶
A python library to create and use mzQC files. Specifically, the library facilitates access to mzQC files in form of a directly usable object representation of mzQC and offers additional functionality to:
serialise
deserialise
check syntax
check semantics
file-info
experimental file-merging
The library follows the formats versioning (which is ‘v(Major).(Minor).(Patch)’).
This library implements python modules for (de-)serialisation and validity checks of the PSI fileformat mzQC. Find the specification document, examples, and and further documentation there.
Install¶
Latest Release¶
Most people will want to install the latest release version of pymzqc. Please install pymzqc via pypi:
pip install pymzqc
From Git¶
If you want a development version, use for example :
pip install -U git+https://github.com/MS-Quality-hub/pymzqc.git
You can select a development branch of your choice by changing the command after the .git, see the manual build instructions.
Containers¶
However, we recommend using the ready-built containers to check out the latest updates.
Online docs¶
To get a nice and simple overview of how pymzqc works, visit here. If you’ve successfully installed the library and want to jump right in and work on the library, we suggest a peek at the codestructure.
If you however just want to get your toes wet, or use it as-is, have a look at the interactive guides (below).
Interactive pymzqc¶
Have a go with our interactive python notebooks to explore what is possible.
Development¶
Contributions are welcome! (Just fork, develop, and open PR.)
Please note that most member attributes of the MZQCFile submodule classes and many functional elements do not conform to PEP8. The element names of the mzQC JSON-schema need to be preserved in order to create a successful and automated JSON<=>pymzqc object mapping. Accordingly, other elements such as functions in all pymzqc modules will keep the JSON-schema names in their naming for consistency.
Repository structure¶
The python package’s code is located in the mzqc folder, continuous testing code in tests, the documentation in doc. The libray-use container descriptions are in containers, if you want a container for library-development, you can use the container description within .devcontainer, more development presets can be found in .vscode.
The jupyter and accessories folders are subprojects making use of the library.
See their README in the respective sub-folders.
Documentation¶
The code documentation style convention is of the type Sphinx/numpy.