tidyqpcr for quantitative PCR analysis, pre-presubmission community enquiry

Hello rOpenSci community,

We are working on a package for quantitative PCR analysis with the tidyverse, tidyqpcr (on github). This package fills a niche for doing reproducible analysis of a popular biological method, and making nice plots of it with flexible experimental designs. We’re planning for an rOpenSci submission. Currently the package works with nice vignettes and documentation and a handful of users, although there’s still work to be done on unit tests and some functionality.

Might anyone be able to give a quick look and big-picture comments to help us shape up for rOpenSci submission? Maybe someone familiar with plate-based assays or PCR? Or even better, a qPCR user who could trial this in their workflow?



Cool package! I could definitely imagine myself using it (once COVID-19 calms down and I get back into the lab). I didn’t have a chance to do a thorough review or use it on my own data today, so the comments below are based on my initial and superficial impressions. I’m happy to discuss at greater length.

Feature suggestions:

  • Determine Ct by setting threshold on amp curve data
  • Functions to calculate dCt (I believe normalizeqPCR does this) and ddCt
  • Support for multiple targets per well
  • Functions for common plots (e.g. plot_amp_curve, plot_melt_curve), though I acknowledge that these may be tricky (figuring out what to facet by/color by/etc)
  • Support for absolute quantification via standard curves


  • Focus on functions provided by your package and what they do and how to use them (e.g. in the multifactorial vignette, explain at greater length about normalizeqPCR, debaseline, getRdTall)
  • Explain a bit more about the format the data needs to be in to be read into the package (since qPCR machines produce data in a variety of formats)
  • Try to simplify them a bit, they’re a little overwhelming at the moment (for example, in the multifactorial experiment vignette, drop thiolutin [six conditions becomes four] and some of the primer sets, only show one plot of melt curves and one set of amp curves).

Your support for creating plates in R is impressive and very comprehensive! I think my personal workflow would more likely be to set up my plate information in Excel and read the file in to R and plug it into your package. I just find that more intuitive. It might be nice to include an example like that as a complementary approach. Another option for creating plates could be the plater package (full disclosure: I wrote that package; I’m suggesting it because I genuinely think/hope it might be useful in your context. Feel free to disregard if it doesn’t seem helpful to you!)

Minor comments:

  • Choose a consistent case (e.g. you have functions called create_blank_plate and getNormCq)

Here is a paper covering different analysis tools for qPCR data, which might give you some ideas about features to offer: A survey of tools for the analysis of quantitative PCR (qPCR) data - ScienceDirect


Thank you for your very useful reply, there is a lot there that we will now think about.

Yes, I agree plater is a good idea for plate layouts, we’ve added that to our issue Read and check plates produced in MS Excel · Issue #12 · ewallace/tidyqpcr · GitHub


1 Like

Thank you @ewallace & @seaaan!!!