'Construct a Classifier computing quartiles over the output of ``self``.
Every non-NaN data point the output is labelled with a value of either
0, 1, 2, or 3, corresponding to the first, second, third, or fourth
quartile over each row.  NaN data points are labelled with -1.
If ``mask`` is supplied, ignore data points in locations for which
``mask`` produces False, and emit a label of -1 at those locations.
Parameters
mask : zipline.pipeline.Filter, optional
Mask of values to ignore when computing quartiles.
Returns
quartiles : zipline.pipeline.classifiers.Quantiles
A Classifier producing integer labels ranging from 0 to 3.'

@expect_types(mask=(Filter, NotSpecifiedType))
def quartiles(self, mask=NotSpecified):

    return self.quantiles(bins=4, mask=mask)
