docs: def has_event_data(self, read_number=None):
          """ Find out if the specified (or only) read has event data.
  
          :param read_number: The read number to check for event data. If this
              is ``None``, and there is only one read, it will check that read.
          :returns: True if event data exists for the read number.
          """
          read_info = self.handle.status.read_info
          if read_number is None:
              if len(read_info) != 1:
                  raise Exception('Must specify a read number if there is not exactly 1 read.')
              read_number = read_info[0].read_number
          else:
              read_numbers = [info.read_number for info in read_info]
              if read_number not in read_numbers:
                  raise Exception('Specified read does not exist.')
          group = '{}/Reads/Read_{}'.format(self.group_name, read_number)
          dataset = self.handle.get_analysis_dataset(group, 'Events', proxy=True)
          return dataset is not None