Please note that only method='linear' is supported for
DataFrame/Series with a MultiIndex.

Parameters:

method:str, default ‘linear’

Interpolation technique to use. One of:

‘linear’: Ignore the index and treat the values as equally
spaced. This is the only method supported on MultiIndexes.

‘time’: Works on daily and higher resolution data to interpolate
given length of interval.

‘index’, ‘values’: use the actual numerical values of the index.

‘pad’: Fill in NaNs using existing values.

‘nearest’, ‘zero’, ‘slinear’, ‘quadratic’, ‘cubic’, ‘spline’,
‘barycentric’, ‘polynomial’: Passed to
scipy.interpolate.interp1d. Both ‘polynomial’ and ‘spline’
require that you also specify an order (int),
e.g. df.interpolate(method='polynomial',order=4).
These use the numerical values of the index.

‘krogh’, ‘piecewise_polynomial’, ‘spline’, ‘pchip’, ‘akima’:
Wrappers around the SciPy interpolation methods of similar
names. See Notes.

The ‘krogh’, ‘piecewise_polynomial’, ‘spline’, ‘pchip’ and ‘akima’
methods are wrappers around the respective SciPy implementations of
similar names. These use the actual numerical values of the index.
For more information on their behavior, see the
SciPy documentation
and SciPy tutorial.

Note how the last entry in column ‘a’ is interpolated differently,
because there is no entry after it to use for interpolation.
Note how the first entry in column ‘b’ remains NaN, because there
is no entry befofe it to use for interpolation.