def to_hierarchical(self, n_repeat, n_shuffle=<NUM_LIT:1>):
levels = self.levels<EOL>codes = [np.repeat(level_codes, n_repeat) for<EOL>level_codes in self.codes]<EOL>codes = [x.reshape(n_shuffle, -<NUM_LIT:1>).ravel(order='<STR_LIT:F>') for x in codes]<EOL>names = self.names<EOL>warnings.warn("<STR_LIT>"<EOL>"<STR_LIT>",<EOL>FutureWarning, stacklevel=<NUM_LIT:2>)<EOL>return MultiIndex(levels=levels, codes=codes, names=names)<EOL>
Return a MultiIndex reshaped to conform to the
shapes given by n_repeat and n_shuffle.

.. deprecated:: 0.24.0

Useful to replicate and rearrange a MultiIndex for combination
with another Index with n_repeat items.

Parameters
----------
n_repeat : int
    Number of times to repeat the labels on self
n_shuffle : int
    Controls the reordering of the labels. If the result is going
    to be an inner level in a MultiIndex, n_shuffle will need to be
    greater than one. The size of each label must divisible by
    n_shuffle.

Returns
-------
MultiIndex

Examples
--------
>>> idx = pd.MultiIndex.from_tuples([(1, 'one'), (1, 'two'),
                                    (2, 'one'), (2, 'two')])
>>> idx.to_hierarchical(3)
MultiIndex(levels=[[1, 2], ['one', 'two']],
           codes=[[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1],
                  [0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1]])