def sub_distr(self, distr):
    '\n        Subtract the given distribution from the current one.\n        Only existing bins are modified, new bins in the given\n        distribution are discarded without raising errors.\n\n        Note that total_value and total_count are not affected, and\n        keep_peak is ignored, therefore analysis relying on these\n        values should not call this method.\n        '
    for b in distr.bins():
        if (b in self.bins()):
            v = distr._data.get(b)
            if (v is not None):
                self._data[b] -= v
Subtract the given distribution from the current one.
Only existing bins are modified, new bins in the given
distribution are discarded without raising errors.

Note that total_value and total_count are not affected, and
keep_peak is ignored, therefore analysis relying on these
values should not call this method.
def sub_distr(self, distr):
    '\n        Subtract the given distribution from the current one.\n        Only existing bins are modified, new bins in the given\n        distribution are discarded without raising errors.\n\n        Note that total_value and total_count are not affected, and\n        keep_peak is ignored, therefore analysis relying on these\n        values should not call this method.\n        '
    for b in distr.bins():
        if (b in self.bins()):
            v = distr._data.get(b)
            if (v is not None):
                self._data[b] -= v