Welcome to qpcr’s documentation!
qpcr
is python package designed to facilitate the analysis of qPCR data through established Delta-Delta-Ct analysis.
It supports a number of ways to import data from a various of source files, pre-process them, analyze them, and finally visualize the results.
Hence, qpcr
aims to provide a maximally user-friendly analysis pipeline for qPCR data, with a lot of costumizability.
Installation
This package can directly be installed via pip
.
pip install qpcr
Example usage
A very basic use case may be that you have an excel file that contains the qPCR data of some qPCR assays you want to analyse. Assuming you are happy with default settings, the entire analysis could look like this:
import qpcr
myfile = "my_datafile.xlsx"
# read the datafile to get "assays-of-interest" and "normalisers"
assays, normalisers = qpcr.read_multi_assay(myfile, decorator=True)
# now we can compute first Delta-Ct values on all our loaded assays
assays = qpcr.delta_ct(assays)
normalisers = qpcr.delta_ct(normalisers)
# and now we can normalise our assays-of-interest using our normalisers
results = qpcr.normalise(assays, normalisers)
# and we can save our results and have a look at them
results.save("my_results.csv")
results.preview()
To facilitate data analysis, common workflows have been implemented in pre-defined pipelines that allow for quick data analysis with minimal user effort.
You can learn more about the pipelines in this tutorial
or this one.
A more advanced example of such an analysis using the pre-defined BasicPlus
pipeline is this:
from qpcr.Pipes import BasicPlus
# get some datafiles
normaliser_files = [
"./Examples/Example Data/28S.csv",
"./Examples/Example Data/actin.csv"
]
assay_files = [
"./Examples/Example Data/HNRNPL_nmd.csv",
"./Examples/Example Data/HNRNPL_prot.csv",
"./Examples/Example Data/SRSF11_nmd.csv",
"./Examples/Example Data/SRSF11_prot.csv",
]
# define our experimental parameters
reps = 6
group_names = ["WT (-)", "WT (+)", "KO (-)", "KO (+)"]
# setting up the pipeline
pipeline = BasicPlus()
pipeline.save_to("./Example Results")
pipeline.replicates(reps)
pipeline.names(group_names)
# feed in our data
pipeline.add_assays(assay_files)
pipeline.add_normalisers(normaliser_files)
# run the pipeline
pipeline.run()
# and at this point the results are already saved...
# show a preview of our results with some customization
results = pipeline.results()
results.drop_rel()
fig = results.preview(mode="interactive", title="Normalized to 28S+Actin")
- If you find
qpcr
useful for your research, please cite it ^^ Kleinschmidt, N. (2023). qpcr - a python package for easy and versatile qPCR data analysis for small-scale datasets and high-throughput (Version 4.1.1) [Computer software]. https://github.com/NoahHenrikKleinschmidt/qpcr.git
- qpcr API reference
- Terminology
- Some more Basics
- Qupid
- Tutorials
- Installing
qpcr
- Basic structure of
qpcr
- Input Data
- First look
- Manual data analysis
- Data analysis using a pipeline
- Filtering the data
- Setting a custom anchor
- Integrating customisation to pre-defined pipelines
- Working with “irregular” Datafiles
- Working with “Big Table” Datafiles
- Decorating datafiles
- Calibrating assays
- Performing statistical tests
- Installing