Skip to content

Second Release (v.3.1.0)

Compare
Choose a tag to compare
@NoahHenrikKleinschmidt NoahHenrikKleinschmidt released this 16 Feb 16:05
· 389 commits to main since this release

This is the second release of qpcr and a major update.

The code has been extensively refactored, while the general end-user usability has remained virtually unchanged.
The qpcr.Assay object takes up a much more prominent role within the code, and receiving new functionalities to
allow easier use. Additionaly, a number of completely new features have been introduced that greatly expand qpcr's capacities.

New features

1. Support for multi-assay datafiles

The new qpcr.Readers submodule now specifies dedicated Reader classes that are able to read and extract data from csv and excel files that contain a single or multiple qPCR assays. To read such "irregular" datafiles, these Readers make use of the also newly added qpcr.Parsers that parse and extract data using numpy.

A new central hub for data reading has been introduced in the form of the qpcr.DataReader which replaces the old SampleReader.

2. Replicate inference

Information about the groups of replicates can now be automatically inferred by a qpcr.Assay object provided that all replicates of a group share the same replicate identifier. If this is the case, also the group names are automatically inferred. Nevertheless, replicates can still be manually provided. To further ease manual replicate settings for large numbers of irregular group sizes a new "formula" method was added to avoid having to specify a long tuple manually.

3. New Pipelines

Two new pipelines have been introduced, called Blueprint and ddCt. The Blueprint pipeline allows access to the same workflow as the BasicPlus pipeline but also allows customisation of the Analyser, Reader, and Normaliser that is used. The ddCt pipeline on the other hand does not work directly with datafiles but requires qpcr.Assay objects directly. This is especially powerful when reading data from a mulit-assay file, which are currently not supported by Basic-style pipelines (including Blueprint).

4. New predefined anchors

The qpcr.Analyser now natively supports using the mean of the reference group and will not require an externally computed value to achieve this. Furthermore, a user-defined function can now also be set as anchor to compute a custom anchor.
Also a bug that rendered the "grouped" anchor non-functional was fixed.

5. Filter nan policy

qpcr.Filters used to crash when encountering an all-nan group of replicates. This can now be suppressed.

6. Plotters

Interactive PreviewResults figures now support padding between subplots. Also, the default style of static PreviewResults figures was changed.

7. Big Fixes

Some more bugs were fixed as they noticed.