Quickly generate plate layouts for qPCR and perform data analysis.
The program reads in data from the params.py
file, the only file the user will (hopefully) have to edit, and uses it to generate a representation of a qPCR plate. This representation is then exported as a .csv to be used as the plate template for a ThermoFischer QuantStudio 5 compatible qPCR machine. The output data from the machine can then be loaded in to the program for further analysis.
- Clone the repo to your computer.
- To create a layout for a plate, enter the relevant information for your samples (e.g. sample name, sample quantities) in the
params.py
file, and save. If you are only creating a plate layout template, you may set the parameterRESULTS_SPREADSHEETS_FILENAME
to an empty string (""). - To generate the .csv template to load into the qPCR machine: open a command line terminal, cd to the local copy of the repo, and enter the following command:
python qpcr_plate_layout.py
. - To analyze output data from the machine, save the output file in the local repo folder. Enter the relevant parameters for the sample in
params.py
, save, and run the following command:python main.py
. Standard curve plots should be displayed automatically.
This plate layout:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
A | Blank | NTC | D5: T1_QS2_004_BC26_1 | D5: T1_QS2_004_BC26_2 | D5: T1_QS2_004_BC26_3 | D5: T1_QS2_004_BC26_4 | D5: T1_QS2_004_BC26_5 | D5: T1_QS2_004_BC26_6 | D5: T1_QS2_004_BC26_7 | |||
B | Blank | NTC | D5: T1_QS2_004_BC26_1 | D5: T1_QS2_004_BC26_2 | D5: T1_QS2_004_BC26_3 | D5: T1_QS2_004_BC26_4 | D5: T1_QS2_004_BC26_5 | D5: T1_QS2_004_BC26_6 | D5: T1_QS2_004_BC26_7 | |||
C | Blank | NTC | D5: T1_QS2_004_BC26_1 | D5: T1_QS2_004_BC26_2 | D5: T1_QS2_004_BC26_3 | D5: T1_QS2_004_BC26_4 | D5: T1_QS2_004_BC26_5 | D5: T1_QS2_004_BC26_6 | D5: T1_QS2_004_BC26_7 | |||
D | ||||||||||||
E | Blank | NTC | F9: T1_QS2_007_BC17_1 | F9: T1_QS2_007_BC17_2 | F9: T1_QS2_007_BC17_3 | F9: T1_QS2_007_BC17_4 | F9: T1_QS2_007_BC17_5 | F9: T1_QS2_007_BC17_6 | F9: T1_QS2_007_BC17_7 | |||
F | Blank | NTC | F9: T1_QS2_007_BC17_1 | F9: T1_QS2_007_BC17_2 | F9: T1_QS2_007_BC17_3 | F9: T1_QS2_007_BC17_4 | F9: T1_QS2_007_BC17_5 | F9: T1_QS2_007_BC17_6 | F9: T1_QS2_007_BC17_7 | |||
G | Blank | NTC | F9: T1_QS2_007_BC17_1 | F9: T1_QS2_007_BC17_2 | F9: T1_QS2_007_BC17_3 | F9: T1_QS2_007_BC17_4 | F9: T1_QS2_007_BC17_5 | F9: T1_QS2_007_BC17_6 | F9: T1_QS2_007_BC17_7 | |||
H |
is generated by entering these parameters:
Now, running python qpcr_plate_layout.py
in terminal will populate the folder with a .csv file named results.csv
. This file can then be loaded into the qPCR machine using the File --> Import Plate Setup feature.
The qPCR machine stored the amplification results in a spreadsheet named 2022-07-25_JS_KC_d5_f9_qpcr_barcodes.xls
(your spreadsheet name will be different). In params.py
, the value of RESULTS_SPREADSHEETS_FILENAME
should be set to the full name of the output spreadsheet:
RESULTS_SPREADSHEETS_FILENAME = 2022-07-25_JS_KC_d5_f9_qpcr_barcodes.xls
Now run the command python main.py
. This will produce plots of the standard curves for each sample family on the plate.