This script automates the normalization process for neutralization assays performed on a 96-well plate read on the Promega system, and more generally, serial dilution results with columns/rows of negative and positive controls.
This script achieved perfect concordance with the normalization in PRISM (R=1.0, ρ<2.2e-16).
INPUT: The script currently only reads in the .xlsx file outputs from Promega in a given directory.
OUTPUT: 0 to 100 normalized data sheets collated into the same .xlsx file that can be imported/copied and pasted back to PRISM for IC50 curve fitting.
Install from github using devtools.
install.packages("devtools") # if you have not installed "devtools" package
devtools::install_github("TKMarkCheng/NormaliseForIC50")
loaded onto R via
if(!require("remotes"))install.packages("remotes",repos="http://cran.us.r-project.org")
remotes::install_github("TKMarkCheng/NormaliseForIC50",dependencies = TRUE, force = TRUE)
A detailed tutorial is available at vignettes/introduction.html
.
- It is very important that you change the input_file, input_directory, and output_file path and names to your own.
- Clone/Download the github repository.
- Move all the Promega read .xlsx files into the same folder (your
input_directory
) - In the
normalisation.R
script, Change theinput_directory
,input_file
andoutput_file
to appropriate names- input_directory=The folder you made on step 2 where you keep all your Promega read .xlsx files
- input_file=Any file from your input_directory as a sanity check.
- output_file=What you want to name the new Excel file (default=test.xlsx)
- Run
normalisation.R
from start to finish
Rotation defaults to 0 (A1 at top left corner).
In cases where the plate was accidentally rotated, or a vertical serial dilution was performed, we can clockwise rotate the read orientation by a multiple of 90° by changing rotate_by
.
Thanks to helpful summer student Kate
Validation set of 10 plates. Further details can be seen in the Validation
directory.
A detailed tutorial is available at vignettes/How_to_integrate_a_platemap.html
If you're using modifying a prior made plate map, a strict format of the platemap as specified in Validation/validation_output/example_generated_platemap_manual_changes.xlsx
must be followed.
Error in utils::unzip(zip_path, list = TRUE) :
zip file '\~$.xlsx' cannot be opened`
You Need to close that (and all) excel file in your target directory for R to be able to read it.