in bayesmark/random_search.py [0:0]
def _check_x_y(X, y, allow_impute=False): # pragma: validator
"""Input validation for `suggest` routine."""
if not (np.ndim(X) == 2):
raise ValueError("X must be 2-dimensional got %s." % str(np.shape(X)))
n_obs, n_params = np.shape(X)
assert n_params >= 1, "We do not support suggest on empty space."
if not (np.shape(y) == (n_obs,)):
raise ValueError("y must be %s not %s." % (str((n_obs,)), str(np.shape(y))))
if not np.all(np.isfinite(X)):
raise ValueError("X must be finite.")
n_real_obs = n_obs
if allow_impute:
if not np.all(np.isfinite(y) | np.isnan(y)):
raise ValueError("y can't contain infs even with data imputation.")
n_real_obs = np.sum(np.isfinite(y))
else:
if not np.all(np.isfinite(y)):
raise ValueError("y must be finite when data imputation not used.")
return n_real_obs, n_params