code: def get_variant_by_name(self, name, variant_info=None):
          
          # From 1.3.2 onwards, PyPlink sets unique names.
          if not self.has_index:
              raise NotImplementedError("Not implemented when IMPUTE2 file is "
                                        "not indexed (see genipe)")
  
          # Getting the seek position
          if variant_info is None:
              try:
                  variant_info = self._impute2_index.loc[name, :]
  
              except KeyError:
                  if name in self.get_duplicated_markers():
                      # The variant is a duplicated one, so we go through all the
                      # variants with the same name and the :dupx suffix
                      return [
                          self.get_variant_by_name(dup_name).pop()
                          for dup_name in self.get_duplicated_markers()[name]
                      ]
  
                  else:
                      # The variant is not in the index
                      logging.variant_name_not_found(name)
                      return []
  
          # Seeking to the right place in the file
          self._impute2_file.seek(variant_info.seek)
  
          # Parsing the file
          genotypes = self._parse_impute2_line(self._impute2_file.readline())
  
          # Fixing the object
          self._fix_genotypes_object(genotypes, variant_info)
  
          return [genotypes]
docs: Get the genotype of a marker using it's name.
  
          Args:
              name (str): The name of the marker.
              variant_info (pandas.Series): The marker information (e.g. seek).
  
          Returns:
              list: A list of Genotypes (only one for PyPlink, see note below).
  
          Note
          ====
              From PyPlink version 1.3.2 and onwards, each name is unique in the
              dataset. Hence, we can use the 'get_geno_marker' function and be
              sure only one variant is returned.