Skip to content


Calkulate is a Python package for finding total alkalinity from titration data using PyCO2SYS.

pypi badge DOI


pip install calkulate

Basic use

If the data for each individual titration is in its own text file and you have a spreadsheet containing the metadata for each titration on separate rows — all formatted as expected — then all you need to do with Calkulate is:

import calkulate as calk
data = calk.read_csv("path/to/metadata_file.csv").calkulate()
data.alkalinity  # <== here are your alkalinity results

data is then a pandas DataFrame based on the metadata file you provided but with some extra columns added such as data.alkalinity, which contains the fully calibrated total alkalinity for each sample.

Other read-in functions are also available (e.g. for Excel spreadsheets and VINDTA .dbs files).

See Dataset methods for more information on what calkulate does.

Coming soon

Calkulate is in active development and new features that should be added soon include:

  • Different alkalinity-solving algorithms.
  • Visualisation functions.
  • Better documentation of the lower-level controls for fine-tuning your analysis.


Calkulate is being developed by Dr Matthew P. Humphreys at the Royal Netherlands Institute for Sea Research (NIOZ, Texel, the Netherlands).


If you use Calkulate in your work, please cite it as:

Humphreys, M. P. and Matthews, R. S. (2022). Calkulate: total alkalinity from titration data in Python. Zenodo. doi:10.5281/zenodo.2634304.

Please specify which version you are using. To find this:

import calkulate as calk


Calkulate is licensed under the GNU General Public License version 3 (GPLv3).