@classmethod<EOL><INDENT>def _simple_new(cls, values, name=None, freq=None, **kwargs):<DEDENT>
<EOL>if isinstance(values, list):<EOL><INDENT>values = np.asarray(values)<EOL><DEDENT>if is_float_dtype(values):<EOL><INDENT>raise TypeError("<STR_LIT>")<EOL><DEDENT>if freq:<EOL><INDENT>freq = Period._maybe_convert_freq(freq)<EOL><DEDENT>values = PeriodArray(values, freq=freq)<EOL>if not isinstance(values, PeriodArray):<EOL><INDENT>raise TypeError("<STR_LIT>")<EOL><DEDENT>result = object.__new__(cls)<EOL>result._data = values<EOL>result._index_data = values._data<EOL>result.name = name<EOL>result._reset_identity()<EOL>return result<EOL>
Create a new PeriodIndex.

Parameters
----------
values : PeriodArray, PeriodIndex, Index[int64], ndarray[int64]
    Values that can be converted to a PeriodArray without inference
    or coercion.