@staticmethod
def __check_mean_size(left, right):
    """Apply f if the value is not None.

        This method is meant to be used with reduce. It will return either the
        right most numpy array or None if any of the array's had
        differing sizes. I wanted to use a Maybe monad here,
        but Python doesn't support that out of the box.

        Return
        ------
        None or numpy.array
            None values will propogate through the reduce automatically.

        """
    if left is None or right is None:
        return None
    elif left.shape != right.shape:
        return None
    return right
