> `freq_bounds ,_ = zip(*freq_bins)`

wow, that's a nice trick! Finally made me understand what the star really does in Python... but isn't it a bit too much of a hack? i.e. decreasing "understandability" for non-hacker scientists? (like me, since I didn't understand it at first ;) )

I found a way to do it in one line, i.e. without the additional line for inserting the first boundary:

    freq_bounds = np.sort(list(set(sum(freq_bins, ()))))

;) but both these solutions seem to me to be far harder to understand than just using extend, wdyt?