def __init__(self, data_type, unit=None,<EOL>analysis_period=None, metadata=None):
assert hasattr(data_type, '<STR_LIT>'),'<STR_LIT>'.format(type(data_type))<EOL>if unit is None:<EOL><INDENT>unit = data_type.units[<NUM_LIT:0>]<EOL><DEDENT>else:<EOL><INDENT>data_type.is_unit_acceptable(unit)<EOL><DEDENT>if analysis_period is not None:<EOL><INDENT>assert hasattr(analysis_period, '<STR_LIT>'),'<STR_LIT>'.format(<EOL>type(analysis_period))<EOL><DEDENT>if metadata is not None:<EOL><INDENT>assert isinstance(metadata, dict),'<STR_LIT>'.format(type(metadata))<EOL><DEDENT>self._data_type = data_type<EOL>self._unit = unit<EOL>self._analysis_period = analysis_period<EOL>self._metadata = metadata or {}<EOL>
Initiate Ladybug header for lists.

        Args:
            data_type: A DataType object. (e.g. Temperature)
            unit: data_type unit (Default: None)
            analysis_period: A Ladybug analysis period (Defualt: None)
            metadata: Optional dictionary of additional metadata,
                containing information such as 'source', 'city', or 'zone'.