code: def phenotypes_to_scored(self,phenotypes=None,overwrite=False):
          if not self.is_uniform(): raise ValueError("inconsistent phenotypes")
          if phenotypes is None: 
              phenotypes = self.phenotypes
          elif isinstance(phenotypes,str):
              phenotypes = [phenotypes]
          def _post(binary,phenotype_label,phenotypes,overwrite):
              d = binary.copy()
              if len(set(phenotypes)&set(list(binary.keys()))) > 0 and overwrite==False:
                  raise ValueError("Error, phenotype already exists as a scored type")
              for label in phenotypes: d[label] = 0
              if phenotype_label == phenotype_label and phenotype_label in phenotypes:
                  d[phenotype_label] = 1
              return d
          output = self.copy()
          output['scored_calls'] = output.apply(lambda x: 
                  _post(x['scored_calls'],x['phenotype_label'],phenotypes,overwrite)
              ,1)
          return output