docs: def get_raw_data(self, read_number=None, start=None, end=None, scale=False):
          """ Pull raw data from the file.
          
          :param read_number: The read number you want raw data from. Pass None
              if there is only one read, and will grab that read's raw data.
          :param start: The first sample to pull. Default is to pull from the
              beginning.
          :param end: One past the last sample to pull. Default is to pull until
              the end.
          :param scale: If set, the returned data will be scaled floating point
              values, in pA. Otherwise raw DAQ values are returned as 16 bit
              integers.
          :returns: Raw data as either 32 bit floats, or 16 bit integers.
          """
          self.assert_open()
          if read_number is None:
              read_number = self._get_only_read_number()
          read_index = self.status.read_number_map[read_number]
          if not self.status.read_info[read_index].has_raw_data:
              msg = 'Fast5 file has no raw data for read {} in {}'.format(read_number, self.filename)
              raise KeyError(msg)
          if end is None:
              end = self.status.read_info[read_index].duration
          if start is None:
              start = 0
          dataset_name = 'Raw/Reads/Read_{}/Signal'.format(read_number)
          return self._load_raw(dataset_name, start, end, scale)