docs: def subset_data(options):
      """Subset the data.
  
      :param options: the options.
  
      :type options: argparse.Namespace
  
      Subset the data using either ``--exclude`` or ``--extract``for markers or
      ``--remove`` or ``keep`` for samples.
  
      """
      # The plink command
      plinkCommand = ["plink", "--noweb"]
  
      # The input file prefix
      if options.is_bfile:
          plinkCommand += ["--bfile", options.ifile, "--make-bed"]
      elif options.is_tfile:
          plinkCommand += ["--tfile", options.ifile, "--recode", "--transpose",
                           "--tab"]
      elif options.is_file:
          plinkCommand += ["--file", options.ifile, "--recode", "--tab"]
  
      # The subset command for SNPs
      if options.exclude is not None:
          plinkCommand += ["--exclude", options.exclude]
      elif options.extract is not None:
          plinkCommand += ["--extract", options.extract]
  
      # The subset command for samples
      if options.keep is not None:
          plinkCommand += ["--keep", options.keep]
      elif options.remove is not None:
          plinkCommand += ["--remove", options.remove]
  
      # The output prefix
      plinkCommand += ["--out", options.out]
  
      # Running the command
      runCommand(plinkCommand)