def interp_data(self, latitude, longitude, utc_time, param):
nctime = self.data['<STR_LIT:time>']  <EOL>ilat, ilon = self.get_nearest_indices(latitude, longitude)<EOL>before = netCDF4.date2index(utc_time, nctime, select='<STR_LIT>')<EOL>fbefore = self.data[param][before, ilat, ilon]<EOL>fafter = self.data[param][before + <NUM_LIT:1>, ilat, ilon]<EOL>dt_num = netCDF4.date2num(utc_time, nctime.units)<EOL>time_ratio = (dt_num - nctime[before]) / self.delta_time<EOL>return fbefore + (fafter - fbefore) * time_ratio<EOL>
Interpolate ``param`` values to ``utc_time`` using indices nearest to
(``latitude, longitude``).

Parmaeters
----------
latitude : float
    Latitude in degrees
longitude : float
    Longitude in degrees
utc_time : datetime.datetime or datetime.date
    Naive or UTC date or datetime to interpolate
param : str
    Name of the parameter to interpolate from the data

Returns
-------
Interpolated ``param`` value at (``utc_time, latitude, longitude``)

Examples
--------
Use this to get a single value of a parameter in the data at a specific
time and set of (latitude, longitude) coordinates.

>>> from datetime import datetime
>>> from pvlib.iotools import ecmwf_macc
>>> data = ecmwf_macc.ECMWF_MACC('aod_tcwv_20121101.nc')
>>> dt = datetime(2012, 11, 1, 11, 33, 1)
>>> data.interp_data(38.2, -122.1, dt, 'aod550')