@classmethod
def from_lists(cls, data, fields, types=None):
    """Create a list of MonaryParams from lists of arguments. These three
        lists will be repeated passed to __init__ as array, field, and mtype.

        :Parameters:
         - `data`: List of numpy masked arrays.
         - `fields`: List of field name.
         - `types` (optional): List of corresponding types.
        """
    if types is None:
        if not len(data) == len(fields):
            raise ValueError('Data and fields must be of equal length.')
        return cls.from_groups(zip(data, fields))
    else:
        if not len(data) == len(fields) == len(types):
            raise ValueError('Data, fields, and types must be of equal length.'
                )
        return cls.from_groups(zip(data, fields, types))
