  We present a Python implementation for RS-HDMR-GPR (Random Sampling High
Dimensional Model Representation Gaussian Process Regression). The method
builds representations of multivariate functions with lower-dimensional terms,
either as an expansion over orders of coupling or using terms of only a given
dimensionality. This facilitates, in particular, recovering functional
dependence from sparse data. The code also allows for imputation of missing
values of the variables and for a significant pruning of the useful number of
HDMR terms. The code can also be used for estimating relative importance of
different combinations of input variables, thereby adding an element of insight
to a general machine learning method. The capabilities of this regression tool
are demonstrated on test cases involving synthetic analytic functions, the
potential energy surface of the water molecule, kinetic energy densities of
materials (crystalline magnesium, aluminum, and silicon), and financial market
data.
