def __init__(self, next_item=None, previous_item=None):
    super().__init__()
    self.next = next_item
    self.previous = previous_item
    if (next_item is not None):
        next_item.previous = self
    if (previous_item is not None):
        previous_item.set_next_item(self)
    self.bucket_size_row = None
    self.max_buckets = ADWIN.MAX_BUCKETS
    self.bucket_total = np.zeros((self.max_buckets + 1), dtype=float)
    self.bucket_variance = np.zeros((self.max_buckets + 1), dtype=float)
    self.reset()
def __init__(self, next_item=None, previous_item=None):
    super().__init__()
    self.next = next_item
    self.previous = previous_item
    if (next_item is not None):
        next_item.previous = self
    if (previous_item is not None):
        previous_item.set_next_item(self)
    self.bucket_size_row = None
    self.max_buckets = ADWIN.MAX_BUCKETS
    self.bucket_total = np.zeros((self.max_buckets + 1), dtype=float)
    self.bucket_variance = np.zeros((self.max_buckets + 1), dtype=float)
    self.reset()