<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def transmute_sites( self, old_site_label, new_site_label, n_sites_to_change ):
 """ Selects a random subset of sites with a specific label and gives them a different label. Args: old_site_label (String or List(String)):
 Site label(s) of the sites to be modified.. new_site_label (String):
 Site label to be applied to the modified sites. n_sites_to_change (Int):
 Number of sites to modify. Returns: None """

        selected_sites = self.select_sites( old_site_label )
        for site in random.sample( selected_sites, n_sites_to_change ):
            site.label = new_site_label
        self.site_labels = set( [ site.label for site in self.sites ] )