code: def interp_data(self, latitude, longitude, utc_time, param):
          
          nctime = self.data['time']  # time
          ilat, ilon = self.get_nearest_indices(latitude, longitude)
          # time index before
          before = netCDF4.date2index(utc_time, nctime, select='before')
          fbefore = self.data[param][before, ilat, ilon]
          fafter = self.data[param][before + 1, ilat, ilon]
          dt_num = netCDF4.date2num(utc_time, nctime.units)
          time_ratio = (dt_num - nctime[before]) / self.delta_time
          return fbefore + (fafter - fbefore) * time_ratio
docs: 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')