def get_values(self, dtype=None):
values = self.values<EOL>if is_object_dtype(dtype):<EOL><INDENT>values = values._box_values(values._data)<EOL><DEDENT>values = np.asarray(values)<EOL>if self.ndim == <NUM_LIT:2>:<EOL><INDENT>values = values.reshape(<NUM_LIT:1>, -<NUM_LIT:1>)<EOL><DEDENT>return values<EOL>
Returns an ndarray of values.

Parameters
----------
dtype : np.dtype
    Only `object`-like dtypes are respected here (not sure
    why).

Returns
-------
values : ndarray
    When ``dtype=object``, then and object-dtype ndarray of
    boxed values is returned. Otherwise, an M8[ns] ndarray
    is returned.

    DatetimeArray is always 1-d. ``get_values`` will reshape
    the return value to be the same dimensionality as the
    block.