PlateRate is a GUI-based tool designed to rapidly find the best linear region for rate calculations in kinetic data exported from a Thermo Scientific Varioskan Lux plate reader. It automatically attempts to find the best linear region of data corresponding to the rate, then allows the user to refine or change that region interactively.
- Primary Goal: Semi-automated identification of a linear portion in absorbance vs. time data representing a rate, e.g for assays of enzyme activity rates.
- Interactive GUI: Lets you review and adjust the suggested region for each sample.
- Multi-File Workflow: You can process multiple data columns in multiple exported Excel files in a single session.
- Final Output: Combines all processed results (slope, start/end time, number of points used) into one results CSV file.
-
Automatic Segment Detection
- The script calculates a linear fit (slope, intercept) and compares its R² to a user-defined cutoff (default: 0.9995).
- It trims points from the front or back until that R² is reached or fewer than 2 points remain.
-
Interactive GUI
- Refine or override the region by specifying new start/end times or by using key bindings to shift the boundaries.
- Displays updated slope and R² values immediately.
-
Customizable R² Nudging
- Press Ctrl+Up or Ctrl+Down to adjust the R² cutoff in small increments and see how it affects the chosen region.
-
Multi-File Session
- After finishing one file, the program prompts you to open another or finish and save results.
-
Read/Write
- Imports Excel files exported by the Varioskan Lux software.
- Merges the results into a single CSV.
-
Python Script
- Ideal for users who have Python 3.x installed. Clone this repository and run
PlateRate.py. - Dependencies include
numpy,pandas,matplotlib, andtkinter(built into most Python distributions).
- Ideal for users who have Python 3.x installed. Clone this repository and run
-
Standalone Windows Application
- For users without Python, PlateRate is also provided as a compiled
.exefile for use in Windows. - Double-clicking this executable will launch the same interactive GUI without needing Python installed.
- For users without Python, PlateRate is also provided as a compiled
- Open PlateRate (either the Python script or the
.exe). - Select an Excel file when prompted.
- Review and refine each sample’s linear segment in the GUI. You can:
- Press Enter to accept the suggested region.
- Press Ctrl+Enter or click “Apply Range” to override with a new start/end time.
- Use arrow key bindings to shift region boundaries or nudge the R² cutoff.
- Repeat for all columns in that file.
- Optionally select more files.
- Save combined results to CSV when done.
- Enter: Accept current region
- Ctrl+Enter: Apply Range override
- Ctrl+Left/Right: Expand/Contract from the left boundary (one data point)
- Shift+Left/Right: Contract/Expand from the right boundary (one data point)
- Ctrl+Up/Down: Increase/Decrease R² cutoff
- Python 3.x
numpy,pandas,matplotlib- The built-in
tkinterlibrary (usually included by default in standard Python)
- Author: Matt Stata
- GitHub: MattStata/PlateRate
