Hi Salvador,
Thanks a lot for your quick reply!
Yes, I also think the species feature is automatically generated for each PhyloNode object, just like the name itself, for example (as indicated
here, where one reads that by default it uses the first 3 characters of the name as species). Updating via PhyloNode.species = species did not work either. However, for the 'name' feature, this did work, just as the add_feature(s) methods did.
It seems difficult to override the function that defines the species names, which I observed since I (to an ancestor of the node I was trying to change the species of), applied ancestor.set_species_naming_function(parse_species_name). If I were to change the name, the species seems to change according to this function, that is. Again, after that changing only the species names of a particular node with any of the options (add features, directly renaming the attribute as you suggested).
I can find a workaround, I realised, by giving this specific node another naming function, but I thought it might be more straightforward to be able to change it by one of the mentioned methods.
Cheers,
Jolien
p.s. I'm not sure whether this is the best place to report this, but I encountered a (very tiny!) typo in the Reference Guide: as you may spot
here, some referrals to 'get_descendant_evol_events' method are written as 'get_descendant
s_evol_events'.