Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A280 Protein Concentration Calculator

A command-line tool for microbiologists and biochemists working in GMP/pharma environments. Compute protein concentrations using the Beer-Lambert law from A280 absorbance readings, and predict molar extinction coefficients from amino acid sequences (Edelhoch method). Supports single-sample calculations and batch CSV processing.

Features

  • Molar Extinction Coefficient Prediction – from amino acid sequence (FASTA or raw string) using Trp/Tyr/Cys counts
  • Single Concentration Calculation – provide absorbance, extinction coefficient (or sequence), dilution, and path length
  • Batch Processing – input a CSV with sample info; output a CSV with concentrations appended
  • GMP-Ready – clean error handling, clear output, consistent formatting suitable for regulated environments
  • Cross-Platform – works anywhere Python runs

Installation

git clone https://github.com/collinsamatu/a280-protein-calc.git
cd a280-protein-calc
pip install -r requirements.txt   # only pytest needed for testing

No additional dependencies required for runtime.

Usage

All commands are invoked via a280-calc. Run python main.py or set up an alias.

1. Calculate molar extinction coefficient from a sequence

# from a FASTA file
python main.py extinction --file protein.fasta

# from a raw sequence
python main.py extinction --seq "WWYCDEFGH"

Output:

11235.00   # M⁻¹cm⁻¹

2. Calculate protein concentration

# using a precomputed extinction coefficient
python main.py conc --absorbance 0.45 --extcoeff 12345 --dilution 10 --pathlength 1.0

# using a sequence to compute extinction coefficient first
python main.py conc --absorbance 0.45 --file protein.fasta --dilution 10

Output:

0.000365 M

3. Batch process a CSV file

The input CSV must have at least columns: Sample, A280, ExtCoeff. Optional: DilutionFactor (default 1), PathLength (default 1.0).

python main.py batch --input samples.csv --output results.csv

Input samples.csv:

Sample,A280,ExtCoeff,DilutionFactor,PathLength
BSA,0.52,43824,5,1.0
Lysozyme,0.38,38000,2,0.5

Output results.csv:

Sample,A280,ExtCoeff,DilutionFactor,PathLength,Concentration
BSA,0.52,43824,5,1.0,0.000059
Lysozyme,0.38,38000,2,0.5,0.000040

License

MIT License - see LICENSE file.


Author: Collins Amatu Gorgerat, 2026

About

Command-line tool to compute protein concentration from A280 absorbance and calculate molar extinction coefficients from amino acid sequences.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages