Quickstart#

A general Python package with a wide variety of miscellaneous utility functions.

Zenodo DOI PyPI version Conda version License Build status Coverage status

About pyjams#

pyjams is a general Python package offering a wide variety of miscellaneous functions in different categories, such as reading different file formats, date conversion routines, or meteorology. It has several subpackages offering constants, special functions, or objective functions to be used with mod:scipy.optimize.

The package modernises and makes available routines of the JAMS Python library, which was created 2009 by Matthias Cuntz while at the Department of Computational Hydrosystems, Helmholtz Centre for Environmental Research - UFZ, Leipzig, Germany, and continued while at Institut National de Recherche pour l’Agriculture, l’Alimentation et l’Environnement (INRAE), Nancy, France.

The complete documentation of pyjams is available at:

Installation#

The easiest way to install is via pip:

pip install pyjams

or via conda:

conda install -c conda-forge pyjams
Requirements

Content#

Modules and functions are currently provided in the following categories:

Functions and modules (alphabetical)#

Function/module

Short description

abc2plot()

Deprecated, moved to package mcplot. Write a, B, iii), … on a plot

alpha_equ_h2o()

Equilibrium fractionation between liquid water and vapour

alpha_kin_h2o()

Kinetic fractionation of molecular diffusion of water vapour

argmax()

Wrapper for numpy.argmax, numpy.ma.argmax, and max for Python iterables

argmin()

Wrapper for numpy.argmin, numpy.ma.argmin, and min for Python iterables

argsort()

Wrapper for numpy.argsort, numpy.ma.argsort, and sorted for Python iterables

closest()

Index in array which entry is closest to a given number

color

Deprecated, moved to package mcplot. Collection of color palettes and continuous color maps

const

Physical, mathematical, computational, isotope, and material constants

date2date()

Convert date representations between different regional variants

date2dec()

Return numeric time values given datetime objects or strings, same as date2num

date2en()

Convert date strings to English date format YYYY-MM-DD hh:mm:ss

date2fr()

Convert date strings to French date format DD/MM/YYYY hh:mm:ss

date2num()

Return numeric time values given datetime objects or strings

date2us()

Convert date strings to American date format MM/DD/YYYY hh:mm:ss

datetime()

Class as cftime.datetime for non-CF-conform calendars

dec2date()

Return datetime objects given numeric time values, same as num2date

directories_from_gui()

Open dialog to select one directory

directory_from_gui()

Open dialog to select several directories

division()

Divide two arrays, return ‘otherwise’ if division by 0

div()

Divide two arrays, return ‘otherwise’ if division by 0, same as division

eair2mrair()

Mixing ratio from partial pressure of water vapour and total pressure

eair2rhair()

Relative humidity from partial pressure of water vapour and temperature

eair2shair()

Specific humidity from partial pressure of water vapour and total pressure

eair2vpd()

Air vapour pressure deficit from partial pressure and temperature

ee()

Deprecated, moved to package pyeee. Parameter screening using Morris’ method of Elementary Effects, same as screening

elementary_effects()

Deprecated, moved to package pyeee. Morris measures mu, stddev and mu*

en2date()

Convert date strings to standard date format DD.MM.YYYY hh:mm:ss

en2fr()

Convert date strings to French date format DD/MM/YYYY hh:mm:ss

en2us()

Convert date strings to American date format MM/DD/YYYY hh:mm:ss

esat()

Saturation vapour pressure over water and ice

fr2date()

Convert French date strings to standard date format DD.MM.YYYY hh:mm:ss

fr2en()

Convert French date strings to English date format YYYY-MM-DD hh:mm:ss

fr2us()

Convert French date strings to American date format MM/DD/YYYY hh:mm:ss

file_from_gui()

Open dialog to select one file

files_from_gui()

Open dialog to select one or several files

fread()

Read numbers from a file into 2D float array

fsread()

Read numbers and strings from a file into 2D float and string arrays

functions

Special functions for testing optimisations, sensitivity analysis, several forms of the logistic function and its derivatives, and other functions to be used with scipy.optimize

gridcellarea()

Area of grid cells on Earth

infonetcdf()

Deprecated, moved to package ncio. Extract information from netCDF file, same as ncinfo()

int2roman()

Integer to Roman numeral conversion

kernel_regression()

Multi-dimensional non-parametric kernel regression

kernel_regression_h()

Determination of bandwidth for kernel regression

mad()

Median absolute deviation test

mcPlot

Deprecated, moved to package mcplot. Matthias Cuntz’ standard plotting class

means()

Calculate daily, monthly, yearly, etc. means of data

morris_sampling()

Deprecated, moved to package pyeee. Sampling of optimised trajectories for Morris measures / Elementary Effects

mrair2eair()

Partial pressure of water vapour from mixing ratio and total pressure

ncinfo()

Deprecated, moved to package ncio. Extract information from netCDF file

ncio

Deprecated, moved to package ncio. netCDF4 functions to copy a netcdf file while doing some transformations on variables and dimensions

ncread()

Deprecated, moved to package ncio. Read variables from netCDF file

num2date()

Return datetime objects given numeric time values

pack()

Pack array with mask like Fortran intrinsic pack

position()

Deprecated, moved to package mcplot. Position arrays of subplots to be used with add_axes

readnetcdf()

Deprecated, moved to package ncio. Read variables from netCDF file, same as ncread

rhair2eair()

Partial pressure of water vapour from relative humidity and temperature

rhair2vpd()

Air vapour pressure deficit from relative humidity and temperature

roman2int()

Roman numeral to integer conversion

sce()

Shuffled-Complex-Evolution algorithm for function min(max)imisation

screening()

Deprecated, moved to package pyeee. Parameter screening using Morris’ method of Elementary Effects

shair2eair()

Partial pressure of water vapour from specific humidity and total pressure

signature2plot()

Deprecated, moved to package mcplot. Write a copyright notice on a plot

sread()

Read strings from a file into 2D string array

str2tex()

Deprecated, moved to package mcplot. Convert strings to LaTeX strings in math environment used by matplotlib’s usetex

tee()

Prints arguments on screen and in file, like Unix/Linux tee utility

text2plot()

Deprecated, moved to package mcplot. Write text on a plot

unpack()

Unpack array using mask like Fortran intrinsic unpack

updatez()

Update arrays in uncompressed numpy .npz format

updatez_compressed()

Update arrays in compressed numpy .npz format

us2date()

Convert date strings to standard date format DD.MM.YYYY hh:mm:ss

us2en()

Convert date strings to English date format YYYY-MM-DD hh:mm:ss

us2fr()

Convert date strings to French date format DD/MM/YYYY hh:mm:ss

vpd2eair()

Partial pressure of water vapour from air vapour pressure deficit and temperature

vpd2rhair()

Relative humidity from air vapour pressure deficit and temperature

xlsread()

Read numbers and strings from Excel file into 2D float and string arrays, same as xread

xlsxread()

Read numbers and strings from Excel file into 2D float and string arrays, same as xread

xread()

Read numbers and strings from Excel file into 2D float and string arrays

Functions and modules per category#

Array Manipulation

Function/module

Short description

argmax()

Wrapper for numpy.argmax, numpy.ma.argmax, and max for Python iterables

argmin()

Wrapper for numpy.argmin, numpy.ma.argmin, and min for Python iterables

argsort()

Wrapper for numpy.argsort, numpy.ma.argsort, and sorted for Python iterables

closest()

Index in array which entry is closest to a given number

pack()

Pack array with mask like Fortran intrinsic pack

unpack()

Unpack array using mask like Fortran intrinsic unpack

Ascii Files

Function/module

Short description

fread()

Read numbers from a file into 2D float array

fsread()

Read numbers and strings from a file into 2D float and string arrays

sread()

Read strings from a file into 2D string array

Data Processing

Function/module

Short description

kernel_regression()

Multi-dimensional non-parametric kernel regression

kernel_regression_h()

Determination of bandwidth for kernel regression

mad()

Median absolute deviation test

means()

Calculate daily, monthly, yearly, etc. means of data

Date and Time

Function/module

Short description

date2date()

Convert date representations between different regional variants

date2dec()

Return numeric time values given datetime objects or strings, same as date2num

date2en()

Convert date strings to English date format YYYY-MM-DD hh:mm:ss

date2fr()

Convert date strings to French date format DD/MM/YYYY hh:mm:ss

date2num()

Return numeric time values given datetime objects or strings

date2us()

Convert date strings to American date format MM/DD/YYYY hh:mm:ss

datetime()

Class as cftime.datetime for non-CF-conform calendars

dec2date()

Return datetime objects given numeric time values, same as num2date

en2date()

Convert date strings to standard date format DD.MM.YYYY hh:mm:ss

en2fr()

Convert date strings to French date format DD/MM/YYYY hh:mm:ss

en2us()

Convert date strings to American date format MM/DD/YYYY hh:mm:ss

fr2date()

Convert French date strings to standard date format DD.MM.YYYY hh:mm:ss

fr2en()

Convert French date strings to English date format YYYY-MM-DD hh:mm:ss

fr2us()

Convert French date strings to American date format MM/DD/YYYY hh:mm:ss

us2date()

Convert date strings to standard date format DD.MM.YYYY hh:mm:ss

us2en()

Convert date strings to English date format YYYY-MM-DD hh:mm:ss

us2fr()

Convert date strings to French date format DD/MM/YYYY hh:mm:ss

num2date()

Return datetime objects given numeric time values

Grids and Polygons

Function/module

Short description

gridcellarea()

Area of grid cells on Earth

Isotopes

Function/module

Short description

alpha_equ_h2o()

Equilibrium fractionation between liquid water and vapour

alpha_kin_h2o()

Kinetic fractionation of molecular diffusion of water vapour

Math

Function/module

Short description

division()

Divide two arrays, return ‘otherwise’ if division by 0

div()

Divide two arrays, return ‘otherwise’ if division by 0, same as division

ee()

Deprecated, moved to package pyeee. Parameter screening using Morris’ method of Elementary Effects, same as screening

elementary_effects()

Deprecated, moved to package pyeee. Morris measures mu, stddev and mu*

functions

Special functions for testing optimisations, sensitivity analysis, several forms of the logistic function and its derivatives, and other functions to be used with scipy.optimize

morris_sampling()

Deprecated, moved to package pyeee. Sampling of optimised trajectories for Morris measures / Elementary Effects

sce()

Shuffled-Complex-Evolution algorithm for function min(max)imisation

screening()

Deprecated, moved to package pyeee. Parameter screening using Morris’ method of Elementary Effects

Meteorology

Function/module

Short description

eair2mrair()

Mixing ratio from partial pressure of water vapour and total pressure

eair2rhair()

Relative humidity from partial pressure of water vapour and temperature

eair2shair()

Specific humidity from partial pressure of water vapour and total pressure

eair2vpd()

Air vapour pressure deficit from partial pressure and temperature

esat()

Saturation vapour pressure over water and ice

mrair2eair()

Partial pressure of water vapour from mixing ratio and total pressure

rhair2eair()

Partial pressure of water vapour from relative humidity and temperature

rhair2vpd()

Air vapour pressure deficit from relative humidity and temperature

shair2eair()

Partial pressure of water vapour from specific humidity and total pressure

vpd2eair()

Partial pressure of water vapour from air vapour pressure deficit and temperature

vpd2rhair()

Relative humidity from air vapour pressure deficit and temperature

Miscellaneous

Function/module

Short description

const

Physical, mathematical, computational, isotope, and material constants

directories_from_gui()

Open dialog to select one directory

directory_from_gui()

Open dialog to select several directories

file_from_gui()

Open dialog to select one file

files_from_gui()

Open dialog to select one or several files

int2roman()

Integer to Roman numeral conversion

roman2int()

Roman numeral to integer conversion

tee()

Prints arguments on screen and in file, like Unix/Linux tee utility

Plotting

Function/module

Short description

abc2plot()

Deprecated, moved to package mcplot. Write a, B, iii), … on a plot

color

Deprecated, moved to package mcplot. Collection of color palettes and continuous color maps

int2roman()

Integer to Roman numeral conversion

mcPlot

Deprecated, moved to package mcplot. Matthias Cuntz’ standard plotting class

position()

Deprecated, moved to package mcplot. Position arrays of subplots to be used with add_axes

roman2int()

Roman numeral to integer conversion

signature2plot()

Deprecated, moved to package mcplot. Write a copyright notice on a plot

str2tex()

Deprecated, moved to package mcplot. Convert strings to LaTeX strings in math environment used by matplotlib’s usetex

text2plot()

Deprecated, moved to package mcplot. Write text on a plot

Special Files

Function/module

Short description

infonetcdf()

Deprecated, moved to package ncio. Extract information from netCDF file, same as ncinfo

ncinfo()

Deprecated, moved to package ncio. Extract information from netCDF file

ncio

Deprecated, moved to package ncio. netCDF4 functions to copy a netcdf file while doing some transformations on variables and dimensions

ncread()

Deprecated, moved to package ncio. Read variables from netCDF file

readnetcdf()

Deprecated, moved to package ncio. Read variables from netCDF file, same as ncread

updatez()

Update arrays in uncompressed numpy .npz format

updatez_compressed()

Update arrays in compressed numpy .npz format

xlsread()

Read numbers and strings from Excel file into 2D float and string arrays, same as xread

xlsxread()

Read numbers and strings from Excel file into 2D float and string arrays, same as xread

xread()

Read numbers and strings from Excel file into 2D float and string arrays

License#

pyjams is distributed under the MIT License. See the LICENSE file for details.

Copyright (c) 2012- Matthias Cuntz, Juliane Mai, Stephan Thober, and Arndt Piayda

The project structure of pyjams has borrowed heavily from welltestpy by Sebastian Müller.