def __new__(cls, values, freq=None, tz=None, dtype=None): if tz is None and hasattr(values, 'tz'): # e.g. DatetimeIndex tz = values.tz freq, freq_infer = dtl.maybe_infer_freq(freq) # if dtype has an embedded tz, capture it tz = dtl.validate_tz_from_dtype(dtype, tz) result = cls._simple_new(values, freq=freq, tz=tz) if freq_infer: inferred = result.inferred_freq if inferred: result.freq = to_offset(inferred) # NB: Among other things not yet ported from the DatetimeIndex # constructor, this does not call _deepcopy_if_needed return result