code: def compute_density(start, end, length, time_unit='us'):
      
      if isinstance(start, int): start = float(start)
      if isinstance(end, int): end = float(end)
      diff = end-start
      if isinstance(diff, timedelta_types):
          if isinstance(diff, np.timedelta64):
              diff = np.timedelta64(diff, time_unit).tolist()
          tscale = 1./np.timedelta64(1, time_unit).tolist().total_seconds()
          return (length/(diff.total_seconds()*tscale))
      else:
          return length/diff
docs: Computes a grid density given the edges and number of samples.
      Handles datetime grids correctly by computing timedeltas and
      computing a density for the given time_unit.