The goal of regression analysis is to predict the value of a numeric outcome variable y given a set of joint values of other (predictor) variables x. Usually a particular set of x-values does not specify a repeatable value for y, but rather a probability distribution of possible y-values, p(y|x). This distribution has a location, scale and shape, all of which can depend on x, and are needed to infer likely values for y given x. Regression methods usually assume that training data y-values are numeric realizations from some p(y|x) measured with infinite precision. Often actual training data y-values are discrete, truncated and/or arbitrary censored versions of an underlying numeric y-value. Regression procedures are presented for estimating location, scale and shape of p(y|x) as general functions of x, in the possible presence of such imperfect training data.