Python butter filter: choosing between analog and digital filter types
Isn't running this filter offline in python automatically assume that it's digital?


butter() doesn't filter your signal, it just designs the filter.  It can design an analog filter or a digital filter.

lfilter() is what actually filters your signal, using the filter you designed, and as you can see it is only digital filtering.  It doesn't make sense to filter a digital signal with an analog filter.

If your data is regularly sampled and you want to process it in a computer, then you need a digital filter.  However it sounds like it isn't:


  about every 7.5ms
  ...
  my samples don't necessarily come in at regular intervals


Do you have a timestamp of when each sample was taken? If you do, then do interpolation first:


from scipy import interpolate
f = interpolate.interp1d(timestamps, measurements)
new_timestamps = np.linspace(min(timestamps), max(timestamps), len(timestamps)*3)
new_measurements = f(new_timestamps)


and then digitally filter the interpolated signal. (I'm just picking 3x oversampling arbitrarily.)

Probably your data is not bandlimited? So you need to plot the interpolation and decide which type of interpolation is the most realistic fit for the underlying data.  

See Wikipedia: Nonuniform sampling and What is an algorithm to re-sample from a variable rate to a fixed rate?