docs: def get_subset_riverid_index_list(self, river_id_list):
          """
          Gets the subset riverid_list from the netcdf file
          Optional returns include the list of valid river ids in the dataset
          as well as a list of missing rive rids
  
          Parameters
          ----------
          river_id_list: list or :obj:`numpy.array`
              Array of river ID's for the river segments you want the index of.
  
          Returns
          -------
          :obj:`numpy.array`
              A sorted array of the river index in the NetCDF file that
              were found.
          :obj:`numpy.array`
              A sorted array of the river IDs that were found.
          list
              An array of the missing river ids.
  
          """
          netcdf_river_indices_list = []
          valid_river_ids = []
          missing_river_ids = []
          for river_id in river_id_list:
              # get where streamids are in netcdf file
              try:
                  netcdf_river_indices_list \
                      .append(self.get_river_index(river_id))
                  valid_river_ids.append(river_id)
              except IndexError:
                  log("ReachID {0} not found in netCDF dataset."
                      " Skipping ...".format(river_id),
                      "WARNING")
                  missing_river_ids.append(river_id)
  
          np_valid_river_indices_list = np.array(netcdf_river_indices_list)
          np_valid_river_ids = np.array(valid_river_ids)
          sorted_indexes = np.argsort(np_valid_river_indices_list)
  
          return(np_valid_river_indices_list[sorted_indexes],
                 np_valid_river_ids[sorted_indexes],
                 np.array(missing_river_ids))