Example #1
0
 def __zero_block_outside_irs(self, r, other_intrangeset):
     my_intrangeset = IntRangeSet(r)
     intersection_intrangeset = my_intrangeset & other_intrangeset
     if intersection_intrangeset.isempty:
         del self.ranges_to_arrays[r]
     else:
         mask = np.zeros(len(my_intrangeset), dtype=bool)
         for s in intersection_intrangeset.ranges():
             start = my_intrangeset.index(s[0])
             end = start + s[1] - s[0]
             mask[start:end] = True
         self.ranges_to_arrays[r][~mask] = 0
         self.ranges_to_arrays[r].T[~mask] = 0 # for compatibility with 1d arrays