Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
03_TaxonomicBackbone.Rmd 99.97 KiB
title: "Taxonomic Backbone - sPlot 3.0"
author: "Francesco Maria Sabatini"
date: "`r format(Sys.time(), '%d %B, %Y')`"
tags: 
- database
- big data
- traits
- taxonomy
output: 
  html_document:
    number_sections: true
    toc: true
    toc_depth: 2
abstract: "This document describes the workflow (with contributions from Oliver Purschke, Jürgen Dengler and Florian Jansen) that was used to generate the taxonomic backbone that standardizes taxon names across the (i) global vegetation plot database sPlot version 3.0 and (ii) the global plant trait data base TRY version 5.  "
urlcolor: blue
![](/data/sPlot/users/Francesco/_sPlot_Management/splot-long-rgb.png "sPlot Logo")

Timestamp: r date()
Drafted: Francesco Maria Sabatini
Revised: Helge Bruelheide, Borja Jimenez-Alfaro
Version: 1.2

Changes to Version 1.1 Additional manual cleaning of species names from BJA, UJ and HB.
Changes to Version 1.2 Changed order of ranking TNRS databases, when a name is matched across more than 1 DB; Using cleaned version of DT table (after stripping non-closed quotation marks). Additionally check with TPL those species that, even if resolved in TNRS, did not return an accepted name.

Data preparation

Load packages

library(reshape2)
library(tidyverse)
library(readr)
library(data.table)
library(knitr)
library(kableExtra)
library(stringr)
library(taxize)
library(Taxonstand)
library(vegdata)

Read in taxon names from sPlot and TRY

#import and save splot names from DT table
DT0 <- readr::read_delim("../sPlot_data_export/sPlot_3_0_2_species_test.csv", 
                            delim="\t", 
                         col_type = cols(
                                PlotObservationID = col_double(),
                                Taxonomy = col_character(),
                                `Taxon group` = col_character(),
                                `Taxon group ID` = col_double(),
                                `Turboveg2 concept` = col_character(),
                                `Matched concept` = col_character(),
                                Match = col_double(),
                                Layer = col_double(),
                                `Cover %` = col_double(),
                                `Cover code` = col_character(),
                                x_ = col_double()
                              )
                         ) 

Import lists of species classified into groups

These objects are defined in the appendix

load("../derived/taxa_manual.RData")
splot.species <- DT0 %>%
  rename(Species.original=`Turboveg2 concept`, Matched.concept=`Matched concept`) %>%
  filter(`Taxon group`!="Mushroom") %>%
  dplyr::select(Species.original, Matched.concept) %>%
  distinct() %>%
  group_by(Matched.concept) %>%
  mutate(fungi= word(Matched.concept, 1) %in% mushroom) %>%
  ungroup() %>%
  filter(fungi==F) %>%
  dplyr::select(Species.original, Matched.concept)

write_csv(splot.species, path = "../_derived/splot3.0.2.species.csv")

!!! I used the column from TRY with the full species name, not the column with only two-word name strings

splot.species <- read_csv("../_derived/splot3.0.2.species.csv")

try.species <- readr::read_csv("../_input/AccSpecies_TRY5.csv", col_names = F, locale = locale(encoding = 'Latin1')) %>%
  dplyr::select(-X6, -X7) %>%
  rename(try.ID=X1, FullSpecies=X2, Species=X3, Genus=X4, Family=X5, GrowthForm=X8)

# Sneak in  species from the Alpine database (Borja & Riccardo), as a courtesy to Project #18
alpine.species <- read_delim("../_input/new_alpine_species.txt", col_names = F, delim = "\t", locale = locale(encoding = 'Latin1')) %>% 
  rename(Species=X1)

Use the Matched.concept column, as it already contains some standardization by Stephan Hennekkens according to synbiosys.

sPlot 3.0.1 contains r nrow(unique(splot.species[,2])) different species names.
TRY 5. contains r nrow(try.species).
I add to this a list of r nrow(alpine.species) alpine species delivered from Riccardo Testolin, within sPlot Project #18.

Combine species lists

spec.list.TRY.sPlot <- splot.species %>%
  dplyr::select(Matched.concept) %>%
  rename(Species=Matched.concept) %>%
  mutate(Source="S") %>%
  bind_rows(try.species %>% 
              dplyr::select(FullSpecies) %>% ##using the full name from TRY
              rename(Species=FullSpecies) %>% 
              mutate(Source="T")) %>%
  bind_rows(alpine.species %>% 
              mutate(Source="A")) %>%
  reshape2::dcast(Species ~ Source) %>%
  mutate(A=ifelse(A>=1, "A", "")) %>%
  mutate(S=ifelse(S>=1, "S", "")) %>%
  mutate(T=ifelse(T>=1, "T", "")) %>%
  mutate(Source=paste(S, T, A, sep="")) %>%
  dplyr::select(-A, -S, -T)
            
 #Number of species unique and in common across databases

The total number of species in the backbone is r nrow(spec.list.TRY.sPlot).

knitr::kable(spec.list.TRY.sPlot %>%
               mutate(Source=factor(Source, 
                                    levels=c("S", "T", "A", "ST", "SA", "TA", "STA"),
                                    labels=c("sPlot only", "TRY only", "Alpine only",
                                             "sPlot + TRY", "sPlot + Alpine", "TRY + Alpine",
                                             "sPlot + TRY + Alpine"))) %>% 
               group_by(Source) %>%
               summarize(Num.taxa=n()), 
  caption="Number of taxa per database") %>%
    kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), 
                  latex_options = "basic", 
                  full_width = F, position = "center")

A-priori cleaning of names

Stripping unwanted characters as well as abbreviation (such as hybrid markers) which would prevent name matching:

#Ancillary function to change to lower case
firstup <- function(x) {
  substr(x, 1, 1) <- toupper(substr(x, 1, 1))
  x
}

spec.list.TRY.sPlot <- spec.list.TRY.sPlot %>%
  mutate(OriginalNames=Species) %>%
  mutate(Species=tolower(Species)) %>%
  mutate(Species=firstup(Species)) %>%
  dplyr::select(OriginalNames, Species, Source) %>%
  mutate(Species=gsub('*', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('cf. ', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('Cf. ', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('[', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub(']', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub(' x ', ' ', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('×', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('aff ', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('(', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub(')', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub(' cf ', ' ', Species, fixed=TRUE)) %>%
  mutate(Species=gsub(' aff. ', ' ', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('c‚e', 'ceae', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('    ', ' ', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('   ', ' ', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('  ', ' ', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('x-', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('X-', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('×', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('like ', '', Species, fixed=TRUE)) %>% 
  mutate(Species=gsub(',', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('#', '', Species, fixed=TRUE)) %>%
  mutate(Species=gsub('_', ' ', Species))

For all names, that have a number in their first word, and consist of > 1 words, remove that word:

spec.list.TRY.sPlot <- spec.list.TRY.sPlot %>% 
  mutate(firstWordWithNumbers=grepl('[0-9]', word(Species, 1))) %>%
  mutate(numberOfWords= sapply(gregexpr("\\W+", Species), length) + 1) %>%
  mutate(Species=ifelse((firstWordWithNumbers & numberOfWords > 1), 
                        sapply(Species, 
                               function(x) substr(x, start=regexpr(pattern =' ', text=x)+1,
                                                  stop=nchar(x))), Species))

Correct some name abbreviations using taxname.abbr in vegdata:

spec.list.TRY.sPlot <- spec.list.TRY.sPlot %>% 
  mutate(Species=taxname.abbr(spec.list.TRY.sPlot$Species)) %>%
  dplyr::select(OriginalNames, Species, Source)  %>% 
  distinct()

Manual cleaning

Fix known issues in some species names

#Manual cleaning
spec.list.TRY.sPlot <- spec.list.TRY.sPlot %>%
  mutate(Species=tolower(Species)) %>%
  mutate(Species=firstup(Species)) %>%
  mutate(Species=gsub("^Str ", "", Species)) %>%
  mutate(Species=gsub("^Unknown ", "", Species)) %>%
  mutate(Species=firstup(Species)) %>%
  mutate(Species=gsub(" [0-9]*$", "", Species)) %>%  #delete digits at end of object
  mutate(Species=gsub("^\\d+|\\d+$", "", Species)) %>% #delete digits at the beginning or end of a string
  mutate(Species=gsub(" sp.$", "", Species)) %>%
  mutate(Species=gsub(" sp$", "", Species)) %>%
  mutate(Species=gsub(" species$", "", Species)) %>%
  mutate(Species=gsub(" *$", "", Species)) %>%
  mutate(Species=gsub(" #$", "", Species)) %>%
  mutate(Species=gsub(" m$", "", Species)) %>%
  mutate(Species=gsub("acea ", "aceae ", Species)) %>%
  mutate(Species=gsub('^Agropyrum', 'Agropyron', Species)) %>%
  mutate(Species=gsub('^Anno ', 'Annona ', Species)) %>%
  mutate(Species=gsub('Adpdytes dimidiata', 'Apodytes dimidiata', Species)) %>%
  mutate(Species=gsub('Adenostorna fasciculaturn', 'Adenostoma fasciculatum', Species)) %>%
  mutate(Species=gsub('Arctostapliylos glallca', 'Arctostaphylos glauca', Species)) %>%
  mutate(Species=gsub('Bituminosa bituminosa', 'Bituminaria bituminosa', Species)) %>%
  mutate(Species=gsub('Causurina equisitifolia', 'Causuarina equisetifolia', Species)) %>%
  mutate(Species=gsub('Convulvus arvensis', 'Convolvulus arvensis', Species)) %>%
  mutate(Species=gsub('Diospyrus dygina', 'Diospyros dygina', Species)) %>%
  mutate(Species=gsub('^Dodoea', 'Dodonaea', Species)) %>%
  mutate(Species=gsub('^Boheravia', 'Boerhavia', Species)) %>%
  mutate(Species=gsub('Centaria maculosa', 'Centaurea maculosa', Species)) %>%
  mutate(Species=gsub('Chamrenerium angustifolium', 'Chamaenerion angustifolium', Species)) %>%
  mutate(Species=gsub('^Chicorium', 'Cichorium', Species)) %>%
  mutate(Species=gsub('^Cirsiumum', 'Cirsium', Species)) %>%
  mutate(Species=gsub('^Colubrium', 'Colubrina', Species)) %>%
  mutate(Species=gsub('^Corymbium', 'Corymbia', Species)) %>%
  mutate(Species=gsub('Cosmos bipinnata', 'Cosmos bipinnatus', Species)) %>%
  mutate(Species=gsub('Diospyrus dygina', 'Diospyros digyna', Species)) %>%
  mutate(Species=gsub('Diospyros egbert', 'Diospyros egbert-walkeri', Species)) %>%
  mutate(Species=gsub('Dispyrus halesioides', 'Diospyros halesioides', Species)) %>%
  mutate(Species=gsub('^Drymis', 'Drimys', Species)) %>%
  mutate(Species=gsub('^Dysoxylon', 'Dysoxylum', Species)) %>%
  mutate(Species=gsub('^Eleaegnus', 'Elaeagnus', Species)) %>%
  mutate(Species=gsub('^Eleutherant', 'Eleutherantera', Species)) %>%
  mutate(Species=gsub('^Echicea', 'Echinacea', Species)) %>%
  mutate(Species=gsub('Gauteria foliolata', 'Gaultheria foliolosa', Species)) %>%
  mutate(Species=gsub('^Geophylla', 'Geophyla', Species)) %>%
  mutate(Species=gsub('Gloichidion insignis', 'Glochidion insigne', Species)) %>%
  mutate(Species=gsub('^Glycium', 'Glycine', Species)) %>%
  mutate(Species=gsub('^Hammalis', 'Hamamelis', Species)) %>%
  mutate(Species=gsub('^Hippochoeris', 'Hypochaeris', Species)) %>%
  mutate(Species=gsub('Ilix tephrohylla', 'Ilex tephrophylla', Species)) %>%
  mutate(Species=gsub('^Jasininum', 'Jasminum', Species)) %>%
  mutate(Species=gsub('Jenipa conjuta', 'Jenipa conjunta', Species)) %>%
  mutate(Species=gsub('^Lechytis', 'Lecythis', Species)) %>%
  mutate(Species=gsub('Lespedeza juncus', 'Lespedeza juncea', Species)) %>%
  mutate(Species=gsub('Licania apelata', 'Licania apetala', Species)) %>%
  mutate(Species=gsub('Limeum arenicola', 'Limeum arenicolum', Species)) %>%
  mutate(Species=gsub('^Maniota', 'Manihot', Species)) %>%
  mutate(Species=gsub('^Menta', 'Mentha', Species)) %>%
  mutate(Species=gsub('Metophyum brownei', 'Metopium brownei', Species)) %>%
  mutate(Species=gsub('Miliusa tomentosum', 'Miliusa tomentosa', Species)) %>%
  mutate(Species=gsub('Mimululus ringens', 'Mimulus ringens', Species)) %>%
  mutate(Species=gsub('Nardus strictus', 'Nardus stricta', Species)) %>%
  mutate(Species=gsub('Neea glomeratha', 'Neea glomerata', Species)) %>%
  mutate(Species=gsub('^Onopordon', 'Onopordum', Species)) %>%
  mutate(Species=gsub('^Orbigynia', 'Orbignya', Species)) %>%
  mutate(Species=gsub('Orites excelsa', 'Orites excelsus', Species)) %>%
  mutate(Species=gsub('Paedorata lutea', 'Paederota lutea', Species)) %>%
  mutate(Species=gsub('Palaquin ellipticum', 'Palaquium ellipticum', Species)) %>%
  mutate(Species=gsub('Palmeria arfakensis', 'Palmeria arfakiana', Species)) %>%
  mutate(Species=gsub('Petalostcmum purpureum', 'Petalostemum purpureum', Species)) %>%
  mutate(Species=gsub('Petalostimum purpureum', 'Petalostemum purpureum', Species)) %>%
  mutate(Species=gsub('^Petrosileum', 'Petroselinum', Species)) %>%
  mutate(Species=gsub('Phlomis herba', 'Phlomis herba-venti', Species)) %>%
  mutate(Species=gsub('^Phyllirea', 'Phillyrea', Species)) %>%
  mutate(Species=gsub('Physilus pumula', 'Physalus pumila', Species)) %>%
  mutate(Species=gsub('Picea maria', 'Picea mariana', Species)) %>%
  mutate(Species=gsub('Picea retroXexa', 'Picea retroflexa', Species)) %>%
  mutate(Species=gsub('Pilayella litoralis', 'Pilayella littoralis', Species)) %>%
  mutate(Species=gsub('Placocarpus schaereri', 'Platecarpus schaerer', Species)) %>%
  mutate(Species=gsub('Placocarpus schraereri', 'Platecarpus schaerer', Species)) %>%
  mutate(Species=gsub('^Pulteea', 'Pultenaea', Species)) %>%
  mutate(Species=gsub('Quercus rubrum', 'Quercus rubra', Species)) %>%
  mutate(Species=gsub('Rubus fruticosa', 'Rubus fruticosus', Species)) %>%
  mutate(Species=gsub('Rubus saxatile', 'Rubus saxatilis', Species)) %>%
  mutate(Species=gsub('Rubus sylvatici', 'Rubus sylvaticus', Species)) %>%
  mutate(Species=gsub('^Sanguiria', 'Sanguinaria', Species)) %>%
  mutate(Species=gsub('Sarauja nepaulensis', 'Sarauja nepalensis', Species)) %>%
  mutate(Species=gsub('^Sateria', 'Setaria', Species)) %>%
  mutate(Species=gsub('Sauraiea nepulensis', 'Saurauia nepalensis', Species)) %>%
  mutate(Species=gsub('Schneckia australis', 'Schenckia australis', Species)) %>%
  mutate(Species=gsub('Smirnium oleastrum', 'Smyrnium olusatrum', Species)) %>%
  mutate(Species=gsub('Solms laubachia', 'Solms-laubachia himalayensis', Species)) %>%
  mutate(Species=gsub('Stellaria chamaejasme', 'Stellera chamaejasme', Species)) %>%
  mutate(Species=gsub('Steraria parviflora', 'Setaria parviflora', Species)) %>%
  mutate(Species=gsub('^Stuartia', 'Stewartia', Species)) %>%
  mutate(Species=gsub('Sycops sinensis', 'Sycopsis sinensis', Species)) %>%
  mutate(Species=gsub('Tacetum vulgare', 'Tanacetum vulgare', Species)) %>%
  mutate(Species=gsub('Talinurn angustissimun', 'Talinun angustissimun', Species)) %>%
  mutate(Species=gsub('Talloma hodgsoni', 'Talauma hodgsonii', Species)) %>%
  mutate(Species=gsub('Taraxacum albo', 'Taraxacum album', Species)) %>%
  mutate(Species=gsub('Tetragonia falcata', 'Tetragona falcata', Species)) %>%
  mutate(Species=gsub('Trapogogon', 'Tragopogon', Species)) %>%
  mutate(Species=gsub('Zyzyphus saeri', 'Zizyphus saeri', Species)) %>%
  mutate(Species=gsub('^Helicrysum', 'Helichrysum', Species)) %>%
  mutate(Species=gsub('^Diceropappus rhinocerotis', 'Elytropappus rhinocerotis', Species)) %>%
  mutate(Species=gsub('^Euphorbiace ', 'Euphorbiacaea ', Species)) %>%
  mutate(Species=gsub('^Gloecapsa', 'Gloeocapsa', Species)) %>%
  mutate(Species=gsub('Glycirhiza', 'Glycyrrhiza', Species)) %>%
  mutate(Species=gsub('Abiesnordmannia', 'Abies nordmannia', Species)) %>%
  mutate(Species=gsub('Alnus inca', 'Alnus incana', Species)) %>%
  mutate(Species=gsub('Amalencier alnifolia', 'Amalenchier alnifolia', Species)) %>% 
  mutate(Species=gsub('Antylis barba-jovis', 'Anthyllis barba-jovis', Species)) %>% 
  mutate(Species=gsub('^Albizzia "', 'Albizia ', Species)) %>% 
  mutate(Species=gsub('^Ipomoena ', 'Ipomoea ', Species)) %>% 
  mutate(Species=gsub('^Ipomea ', 'Ipomoea ', Species)) %>% 
  mutate(Species=gsub('Ipomo wolco', 'Ipomoea wolcottiana', Species)) %>% 
  ## additional manual cleaning from UJ, BJA, HB
  mutate(Species=gsub('Abacaba palm', 'Oenocarpus balickii', Species)) %>% 
  mutate(Species=gsub('Acerkuomeii', 'Acer kuomeii', Species)) %>% 
  mutate(Species=gsub('Alder$', 'Alnus', Species)) %>% 
  mutate(Species=gsub('Amapa$', 'Tabebuia', Species)) %>% 
  mutate(Species=gsub('Amapa amargoso', 'Parahancornia amapa', Species)) %>% 
  mutate(Species=gsub('Amapa doce$', 'Tabebuia', Species)) %>% 
  mutate(Species=gsub('Amapai$', 'Tabebuia', Species)) %>% 
  mutate(Species=gsub('Amapaí$', 'Tabebuia', Species)) %>% 
  mutate(Species=gsub('Amapa m1', 'Tabebuia', Species)) %>% 
  mutate(Species=gsub('Amaranth$', 'Amaranthus', Species)) %>% 
  mutate(Species=gsub('Amophora fruticosa', 'Amorpha fruticosa', Species)) %>% 
  mutate(Species=gsub('Anacardiace ', 'Anacardiaceae ', Species)) %>% 
  mutate(Species=gsub('Anagallisarvensis', 'Anagallis arvensis', Species)) %>% 
  mutate(Species=gsub('Anemonenarcissiflora var.', 'Anemone narcissiflora', Species)) %>% 
  mutate(Species=gsub('Anenome ', 'Anemone', Species)) %>% 
  mutate(Species=gsub('Anona ', 'Annona ', Species)) %>% 
  mutate(Species=gsub('Antylis ', 'Anthyllis', Species)) %>% 
  mutate(Species=gsub('Apocyncadea gelbblueh$', 'Apocynaceae', Species)) %>% 
  mutate(Species=gsub('Aracium', 'Crepis', Species)) %>% 
  mutate(Species=gsub('Ardis mexic', 'Ardisia mexicana subsp. siltepecana', Species)) %>% 
  mutate(Species=gsub('Ardis verap', 'Ardisia verapazensis', Species)) %>% 
  mutate(Species=gsub('Argenomne hummemannii', 'Argemone hunnemanni', Species)) %>% 
  mutate(Species=gsub('Artabotus', 'Artabotrys', Species)) %>% 
  mutate(Species=gsub('Artemisiaintegrifolia', 'Artemisia integrifolia', Species)) %>% 
  mutate(Species=gsub('Asclepiacea$', 'Asclepiadaceae', Species)) %>% 
  mutate(Species=gsub('Asclep. klimmer', 'Asclepiadaceae', Species)) %>% 
  mutate(Species=gsub('Astartoseris triquetra', 'Lactuca triquetra', Species)) %>% 
  mutate(Species=gsub('Asteracee ', 'Asteraceae ', Species)) %>% 
  mutate(Species=gsub('Avenula glauc$', 'Avenula', Species)) %>% 
  mutate(Species=gsub('Baikea plurijuga', 'Baikiaea plurijuga', Species)) %>% 
  mutate(Species=gsub('Binse rundbl', 'Juncaceae', Species)) %>% 
  mutate(Species=gsub('Blättrige fabaceae th', 'Fabaceae', Species)) %>% 
  mutate(Species=gsub('Bonel macro$', 'Bonellia macrocarpa subsp. macrocarpa', Species)) %>% 
  mutate(Species=gsub('Boraginacee samtig', 'Boraginaceae', Species)) %>% 
  mutate(Species=gsub('Bri¢fitos', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Bryophyte$', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Bryopsida', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Carallia macrophylla', 'Carallia', Species)) %>% 
  mutate(Species=gsub('Carexectabilis', 'Carex spectabilis', Species)) %>% 
  mutate(Species=gsub('Carex fein', 'Carex', Species)) %>% 
  mutate(Species=gsub('Cerania vermicularis', 'Thamnolia vermicularis', Species)) %>% 
  mutate(Species=gsub('Chamelauci merredin', 'Chamelaucium', Species)) %>% 
  mutate(Species=gsub('Chamelau drummon', 'Chamelaucium', Species)) %>% 
  mutate(Species=gsub('Charophyta', 'Characeae', Species)) %>% 
  mutate(Species=gsub('Cheiridopsis-keimlinge', 'Cheiridopsis', Species)) %>% 
  mutate(Species=gsub('Chenopodiacee$', 'Chenopodiaceae', Species)) %>% 
  mutate(Species=gsub('Chiangioden mexicanum', 'Chiangiodendron mexicanum', Species)) %>% 
  mutate(Species=gsub('Chiranthode pentadactylon', 'Chiranthodendron pentadactylon', Species)) %>% 
  mutate(Species=gsub('Chrysobalan ', 'Chrysobalanus ', Species)) %>% 
  mutate(Species=gsub('Cladapodiella', 'Cladopodiella', Species)) %>% 
  mutate(Species=gsub('Cleidium ', 'Cleidion ', Species)) %>% 
  mutate(Species=gsub('Collema/leptogium lichenoides', 'Collemataceae', Species)) %>% 
  mutate(Species=gsub('Comarostaph discolor', 'Comarostaphylis discolor', Species)) %>% 
  mutate(Species=gsub('Combretdodendrum africana', 'Combretodendrum africanum', Species)) %>% 
  mutate(Species=gsub('Commelinacaea floscopa', 'Floscopa glomerata', Species)) %>% 
  mutate(Species=gsub('Coyncia setigera', 'Coincya setigera', Species)) %>% 
  mutate(Species=gsub('Crataeva', 'Crateva', Species)) %>% 
  mutate(Species=gsub('Craterosperma', 'Rubiaceae', Species)) %>% 
  mutate(Species=gsub('Crespicium', 'Burseraceae', Species)) %>% 
  mutate(Species=gsub('Critoniadel nubigenus', 'Critoniadelphus nubigenus', Species)) %>% 
  mutate(Species=gsub('Crotalaria/vigna?', 'Fabaceae', Species)) %>% 
  mutate(Species=gsub('Croto billb', 'Croton billbergianus subsp. pyramidalis', Species)) %>% 
  mutate(Species=gsub('Dana„ racemosa', 'Danae racemosa', Species)) %>% 
  mutate(Species=gsub('Deehasia', 'Dehaasia', Species)) %>% 
  mutate(Species=gsub('Dichapetala', 'Dichapetalum', Species)) %>% 
  mutate(Species=gsub('Distel bractea', 'Asteracaea', Species)) %>% 
  mutate(Species=gsub('Distelig asteraceae', 'Asteracaea', Species)) %>% 
  mutate(Species=gsub('Dodon visco', 'Dodonaea viscosa', Species)) %>% 
  mutate(Species=gsub('Doldenbluetler', 'Apiaceae', Species)) %>% 
  mutate(Species=gsub('Echinosurus capitatus', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Einähriges gras$', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Einähriges gras von gestern$', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Einblütiges rispengras', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Eiovaltrichtergrundblatt orchidee', 'Orchidaceae', Species)) %>% 
  mutate(Species=gsub('Elongata subsp.', 'Pohlia elongata', Species)) %>% 
  mutate(Species=gsub('Enriquebelt ', 'Enriquebeltrania ', Species)) %>% 
  mutate(Species=gsub('Entermorpha ', 'Enteromorpha ', Species)) %>% 
  mutate(Species=gsub('Erodiurn$', 'Erodium', Species)) %>% 
  mutate(Species=gsub('Euc. chloroclada x camaldulensis', 'Eucalyptus', Species)) %>% 
  mutate(Species=gsub('Euphorbiacée ipatouduluga gouduatché', 'Euphorbiaceae', Species)) %>% 
  mutate(Species=gsub('Fabacee kleeblatt stengel schwarzdrüsi', 'Fabaceae', Species)) %>% 
  mutate(Species=gsub('Fabaceenstrauch wie 132446 f', 'Fabaceae', Species)) %>% 
  mutate(Species=gsub('Fabaceenstr kleinbltrg', 'Fabaceae', Species)) %>% 
  mutate(Species=gsub('Fabacee wie lotus f', 'Fabaceae', Species)) %>% 
  mutate(Species=gsub('Farn', 'Pteridophyta', Species)) %>% 
  mutate(Species=gsub('Farn cystopteris', 'Cystopteris', Species)) %>% 
  mutate(Species=gsub('Fern', 'Pteridophyta', Species)) %>% 
  mutate(Species=replace(Species, list=word(Species, 1)=="Fingergras", values="Digitaria")) %>% 
    mutate(Species=replace(Species, list=word(Species, 1)=="Fingerhirse", values="Digitaria")) %>% 
  mutate(Species=gsub('Gelbe onagraceae', 'Onagraceae', Species)) %>% 
  mutate(Species=gsub('Gramine', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Graminea', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Graminia', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Grannenquecke', 'Poaceae', Species)) %>% 
  mutate(Species=replace(Species, 
                     list=word(Species, 1)=="Gras", 
                     values="Poaceae")) %>% 
  mutate(Species=gsub('Gynostachi dicanthus', 'Gymnostachium diacanthus', Species)) %>% 
  mutate(Species=gsub('Hafer haarkranz', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Hapolosiphon', 'Hapalosiphon', Species)) %>% 
  mutate(Species=gsub('Heliocrysum', 'Helichrysum', Species)) %>% 
  mutate(Species=replace(Species, list=word(Species, 1)=="Hepaticae", values="Bryophyta")) %>% 
  mutate(Species=gsub('Hepaticas', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Hepatophyta', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Hermerocalis', 'Hemerocallis', Species)) %>% 
  mutate(Species=replace(Species, 
                     list=word(Species, 1)=="Hirse", 
                     values="Poaceae")) %>% 
  mutate(Species=gsub('Hirte trian', 'Hirtella triandra subsp. media', Species)) %>% 
    mutate(Species=replace(Species, list=word(Species, 1)=="Hohlzahn", values="Lamiaceae")) %>%
  mutate(Species=gsub('Hondurodend urceolatum', 'Hondurodendron urceolatum', Species)) %>% 
  mutate(Species=gsub('Hornklee gelb', 'Fabaceae', Species)) %>% 
  mutate(Species=replace(Species, 
                     list=word(Species, 1)=="Horstgras",
                     values="Poaceae")) %>% 
  mutate(Species=replace(Species, 
                     list=word(Species, 1)=="Huehnerhirse",
                     values="Digitaria")) %>% 
  mutate(Species=gsub('Hydrocoleus lyngbyaceus', 'Hydrocoleum lyngbyaceum', Species)) %>% 
  mutate(Species=gsub('Hyernima nipensis', 'Hieronyma nipensis', Species)) %>% 
  mutate(Species=gsub('Hyeronima', 'Hieronyma', Species)) %>% 
  mutate(Species=gsub('Hypocal angusti', 'Hypocalymma angustifolium', Species)) %>% 
  mutate(Species=gsub('Hypocalym nambung', 'Hypocalymma', Species)) %>% 
  mutate(Species=gsub('Hyprium', 'Hypericum', Species)) %>% 
  mutate(Species=gsub('Igelkolben', 'Sparganium', Species)) %>% 
  mutate(Species=gsub('Ilexã‚â paraguariensis', 'Ilex', Species)) %>% 
  mutate(Species=gsub('Ipomea', 'Ipomoea', Species)) %>% 
  mutate(Species=gsub('Ipomoena', 'Ipomoea', Species)) %>% 
  mutate(Species=gsub('Jm kürbis stark behaart', 'Cucurbitaceae', Species)) %>% 
  mutate(Species=gsub('Juncaginacee/triglochin', 'Triglochin', Species)) %>% 
  mutate(Species=gsub('Juncas', 'Juncus', Species)) %>% 
  mutate(Species=gsub('Keilblatt cyperus', 'Cyperus', Species)) %>% 
  mutate(Species=gsub('Khh 3010 polygalacee', 'Polygalaceae', Species)) %>% 
  mutate(Species=gsub('	Khh 3014 liliacee 3f„ch. kapsel schwarze samen', 'Liliaceae', Species)) %>% 
  mutate(Species=gsub('Khh 3024 brachiaria', 'Brachiaria', Species)) %>% 
  mutate(Species=gsub('Khh 3025 liliaceae gelbe blten breite bl„tter', 'Liliaceae', Species)) %>% 
  mutate(Species=gsub('Khh 3037 ficus', 'Ficus', Species)) %>% 
  mutate(Species=gsub('Khh 3054 ficus iteophylla miq.', 'Ficus', Species)) %>% 
  mutate(Species=gsub('Kl. borstgras', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Kleine malvaceae', 'Malvaceae', Species)) %>% 
  mutate(Species=replace(Species, 
                     list=word(Species, 1)=="Kletter", 
                     values="Asteraceae")) %>% 
  mutate(Species=gsub('Klimmer asclepiadaceae', 'Asclepiadaceae', Species)) %>% 
  mutate(Species=gsub('Klimmer curcuvitaceae', 'Cucurbitaceae', Species)) %>% 
  mutate(Species=gsub('Kl. sauergras', 'Cyperaceae', Species)) %>% 
  mutate(Species=gsub('Knabenkraut gefleckt', 'Orchis', Species)) %>% 
  mutate(Species=gsub('Knubbelblüt. gras haarkranz vgl f', 'Poaceae', Species)) %>% 
  mutate(Species=replace(Species, 
                   list=word(Species, 1)=="Koenigskerze", 
                   values="Verbascum")) %>% 
  mutate(Species=gsub('Kriechgras zynodon', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Kürbis', 'Cucurbitaceae', Species)) %>% 
  mutate(Species=gsub('Lamiaceen strauch', 'Lamiaceae', Species)) %>% 
  mutate(Species=gsub('Lamiacee orange', 'Lamiaceae', Species)) %>% 
  mutate(Species=gsub('Lamiales orobanchaceae + phrymaceae + plantaginaceae + scrophulariaceae', 'Orobanchaceae', Species)) %>% 
  mutate(Species=gsub('Lantanacamara wandelrösschen', 'Lantana camara', Species)) %>% 
  mutate(Species=gsub('Lasiopeta watheroo k. shepherd & c. wilkins ks', 'Lasiopetalum', Species)) %>% 
  mutate(Species=gsub('Leg-inderteminada', 'Fabaceae', Species)) %>% 
  mutate(Species=gsub('Legu 1fiedrig groá schlank', 'Fabaceae', Species)) %>% 
  mutate(Species=gsub('Legume$', 'Fabaceae', Species)) %>% 
  mutate(Species=gsub('Leguminosae spgm', 'Fabaceae', Species)) %>% 
  mutate(Species=gsub('Leguminosea', 'Fabaceae', Species)) %>% 
  mutate(Species=replace(Species, 
                 list=word(Species, 1)=="Leguminose", 
                 values="Fabaceae")) %>% 
  mutate(Species=gsub('Leheelo grass', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Lepid carra', 'Lepiderema', Species)) %>% 
  mutate(Species=gsub('Lich caloplaca', 'Caloplaca', Species)) %>% 
  mutate(Species=gsub('Liliacee', 'Liliaceae', Species)) %>% 
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Lilie", 
               values="Liliaceae")) %>% 
  mutate(Species=gsub('Liliengewächs', 'Liliaceae', Species)) %>% 
  mutate(Species=gsub('Lisea', 'Litsea', Species)) %>% 
  mutate(Species=gsub('Lisymachia', 'Lysimachia', Species)) %>% 
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Liverwort", 
               values="Bryophyta")) %>% 
  mutate(Species=gsub('Livwort', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Lonicerachrysantha', 'Lonicera chrysantha', Species)) %>% 
  mutate(Species=gsub('Lycoctamnus barbatus', 'Aconitum barbatum', Species)) %>% 
  mutate(Species=gsub('Lygopus', 'Lycopus', Species)) %>% 
  mutate(Species=gsub('Maitenus', 'Maytenus', Species)) %>% 
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Malpighiace", 
               values="Malpighiaceae")) %>% 
  mutate(Species=gsub('Malpighiales chrysobalanaceae + humiriaceae', 'Malpighiaceae', Species)) %>% 
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Malve", 
               values="Malvaceae")) %>% 
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Mammutgras", 
               values="Poaceae")) %>% 
  mutate(Species=gsub('Mammutgrass', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Maqui guian', 'Maquira guianensis subsp. costaricana', Species)) %>% 
  mutate(Species=gsub('Marchantiophyta', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Mariana aphylla', 'Maireana aphylla', Species)) %>% 
  mutate(Species=gsub('Mehrfingeriges ährengras', 'Poaceae', Species)) %>% 
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Melastomata", 
               values="Melastomataceae")) %>% 
  mutate(Species=gsub('Mesembr minibl', 'Mesembryanthemum', Species)) %>% 
  mutate(Species=gsub('Mesostomma kotschyanum', 'Mesostemma kotschyana', Species)) %>% 
  mutate(Species=gsub('Microhepatics', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Micromeria micrantha', 'Micromeria graeca subsp. micrantha', Species)) %>% 
  mutate(Species=gsub('Mimose minifiedrig f', 'Fabaceae', Species)) %>% 
  mutate(Species=gsub('Miniepilobium', 'Epilobium', Species)) %>% 
  mutate(Species=gsub('Minimargerite', 'Asteraceae', Species)) %>% 
  mutate(Species=gsub('Miniochna', 'Ochna', Species)) %>% 
  mutate(Species=gsub('Minischilf 132466 f', 'Poaceae', Species)) %>% 
  mutate(Species=gsub('Mistletoe', 'Viscum', Species)) %>% 
  mutate(Species=gsub('Mniaecia', 'Mniaceae', Species)) %>% 
  mutate(Species=gsub('Molemo', 'Turraea', Species)) %>% 
  mutate(Species=gsub('Molses', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Momisa pigra', 'Mimosa pigra', Species)) %>% 
  mutate(Species=gsub('Monandrus squarrosus', 'Cyperus squarrosus', Species)) %>% 
  mutate(Species=gsub('Monchema debile', 'Monechma debile', Species)) %>%
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Monochna", 
               values="Polygalaceae")) %>% 
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Moos", 
               values="Bryophyta")) %>% 
  mutate(Species=gsub('Moospolster grau-grün', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Mortonioden ', 'Mortoniodendron ', Species)) %>% 
  mutate(Species=gsub('Mos onbekend', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Mossen overige', 'Bryophyta', Species)) %>% 
  mutate(Species=gsub('Mougetia', 'Mougeotia', Species)) %>% 
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Musci", 
               values="Bryophyta")) %>% 
  mutate(Species=gsub('Myciantes', 'Myrcianthes', Species)) %>% 
  mutate(Species=gsub('Myrciaã‚â pulchra', 'Myrcia pulchra', Species)) %>% 
  mutate(Species=gsub('Myrcianov.', 'Myrcia', Species, fixed = T)) %>% 
  mutate(Species=gsub('Myrsi coria', 'Myrsine coriacea', Species)) %>% 
  mutate(Species=gsub('Myrtaceenstrauch', 'Myrtaceae', Species)) %>% 
  mutate(Species=gsub('Nachtkerze fru dreispaltig', 'Onagracaee', Species)) %>% 
  mutate(Species=gsub('Neobartsia crenoloba', 'Bartsia crenoloba', Species)) %>% 
  mutate(Species=gsub('None$', 'Nonea', Species)) %>%
  mutate(Species=gsub('Ocos adenophylla', 'Symplocos adenophylla', Species)) %>%
  mutate(Species=gsub('Officinale subsp. group', 'Taraxacum officinale s.l.', Species)) %>%
  mutate(Species=gsub('Orch$', 'Orchidaceae', Species)) %>%
  mutate(Species=gsub('Orchid', 'Orchidaceae', Species)) %>%
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Orchidee", 
               values="Orchidaceae")) %>% 
  mutate(Species=replace(Species, 
               list=word(Species, 1) %in% c("Papilonacea", "Papilionacea"),
               values="Fabaceae")) %>% 
  mutate(Species=gsub('Pasania dodoniifolia', 'Lithocarpus dodonaeifolius', Species)) %>%
  mutate(Species=gsub('Phoebengmoensis', 'Phoebe hungmoensis', Species)) %>%
  mutate(Species=gsub('Picra antid$', 'Picramnia antidesma subsp. fessonia', Species)) %>%
  mutate(Species=gsub('Pinopsida', 'Coniferae', Species)) %>%
  mutate(Species=gsub('Pisonianov.', 'Pisonia', Species, fixed=T)) %>%
  mutate(Species=gsub('Pithecellob ', 'Pithecellobium ', Species)) %>%
  mutate(Species=gsub('Pithecocten', 'Pithecoctenium', Species)) %>%
  mutate(Species=gsub('Pleradenoph longicuspis', 'Pleradenophora longicuspis', Species)) %>%
  mutate(Species=gsub('Pleuranthod ', 'Pleuranthodendron ', Species)) %>%
  mutate(Species=gsub('Poales', 'Poaceae', Species)) %>%
  mutate(Species=replace(Species, 
               list=word(Species, 1) %in% c("Polygalacea", "Polygalacee"),
               values="Polygalaceae")) %>%
  mutate(Species=replace(Species, 
               list=word(Species, 1) %in% c("Polygonaceae", "Polygonacee"),
               values="Polygonaceae")) %>% 
  mutate(Species=gsub('Polygonumlongisetum', 'Polygonum longisetum', Species)) %>%
  mutate(Species=gsub('Posoq coria subsp. maxima', 'Posoqueria coriacea subsp. maxima', Species)) %>%
  mutate(Species=gsub('Prosthecidi ', 'Prosthecidiscus ', Species)) %>%
  mutate(Species=gsub('Pseudo bidens', '', Species)) %>% 
  mutate(Species=replace(Species, 
               list=word(Species, 1) %in% 
                 c("Pseudobriza", "Pseudofingergras", 
                   "Pseudogerste", "Puschelgras", "Quecke",
                   "Queckenblatt", "Queckengras", 
                   "Roggen/hafer", "Ruchgras", "Silbergras", 
                   "Suessgras"), 
               values="Poaceae")) %>% 
  mutate(Species=gsub('Ptarmica', 'Achillea', Species)) %>%
  mutate(Species=gsub('Pterost cauline leaves n. gibson & m.n. lyons', 'Pterostegia', Species)) %>%
  mutate(Species=gsub('Quararibeaã‚â guianensis', 'Quararibea guianensis', Species)) %>%
  mutate(Species=gsub('Rainfarn f', 'Asteraceae', Species)) %>%
  mutate(Species=gsub('Ranke ipomoea', 'Ipomoea', Species)) %>%
  mutate(Species=gsub('Ranke rubiaceae', 'Rubiaceae', Species)) %>%
  mutate(Species=gsub('Rauwolfia', 'Rauvolfia', Species)) %>%
  mutate(Species=gsub('Rheinfarn', 'Asteraceae', Species)) %>%
  mutate(Species=gsub('Rhodostemon kunthiana', 'Rhodostemonodaphne kunthiana', Species)) %>%
  mutate(Species=gsub('Riccardia/aneura', 'Bryophyta', Species)) %>%
  mutate(Species=gsub('Rietgras steril 134051a', 'Poaceae', Species)) %>%
  mutate(Species=gsub('Rosenbergio formosum', 'Rosenbergiodendron formosum', Species)) %>%
  mutate(Species=gsub('Rotes puschelgras', 'Poaceae', Species)) %>%
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Rubiacea", 
               values="Rubiaceae")) %>% 
  mutate(Species=gsub('Rytidospe goomallin a.g. gunness et al. oakp 10/', 'Rytidosperma', Species)) %>%
  mutate(Species=gsub('Salacia idoensis', 'Salacia', Species)) %>%
  mutate(Species=gsub('Samphire', 'Amaranthaceae', Species)) %>%
  mutate(Species=replace(Species, 
               list=word(Species, 1) %in% 
                 c("Sauergras", "Schlanksegge", "Sedge", 
                   "Segge", "Simse"),
               values="Cyperaceae")) %>% 
  mutate(Species=gsub('Scaev repen subsp. north sandp r.j. cranf & p.j. spenc', 'Scaevola repens', Species)) %>%
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Schachtelhalm", 
               values="Equisetaceae")) %>% 
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Schnittlauch", 
               values="Amaryllidaceae")) %>% 
  mutate(Species=gsub('Schwertlilie trocken', 'Iridaceae', Species)) %>%
  mutate(Species=replace(Species, 
               list=word(Species, 1) %in% c("Scropholacea", "Scrophulariacea", "Scroph."),
               values="Scrophulariacea")) %>% 
  mutate(Species=gsub('Sitzende onagraceae', 'Onagraceae', Species)) %>%
  mutate(Species=gsub('Sonnenblume', 'Asteraceae', Species)) %>%
  mutate(Species=gsub('Stachelgurke', 'Cucurbitaceae', Species)) %>%
  mutate(Species=gsub('Stark behaarte malve', 'Malvaceae', Species)) %>%
  mutate(Species=gsub('Staude asteraceae bl watteweich f', 'Asteraceae', Species)) %>%
  mutate(Species=gsub('Staude crotalaria unterseite silber', 'Crotalaria', Species)) %>%
  mutate(Species=gsub('Staude solanum', 'Solanaceae', Species)) %>%
  mutate(Species=gsub('Staude tephrosia', 'Tephrosia', Species)) %>%
  mutate(Species=gsub('Stipagrosist panicle gross', 'Stipagrostis', Species)) %>%
  mutate(Species=gsub('Asteraceae u silber', 'Asteraceae', Species)) %>%
  mutate(Species=gsub('Stratonostoc communeá', 'Stratonostoc commune', Species)) %>%
  mutate(Species=gsub('Strauch asteraceae nadelblätt.', 'Asteraceae', Species)) %>%
  mutate(Species=gsub('Strauch blatt wie salix reticulata astera', 'Asteraceae', Species)) %>%
  mutate(Species=gsub('Strauch blatt wie salix reticulata astera 132534b', 'Asteraceae', Species)) %>%
  mutate(Species=gsub('Strauch fabaceae gerieft schote', 'Fabaceae', Species)) %>%
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Strauch" &
                 word(Species,2)=="Rubiaceae", 
               values="Rubiaceae")) %>% 
  mutate(Species=gsub('Fabaceae samtig bl lanzettlich', 'Fabaceae', Species)) %>%
  mutate(Species=gsub('Ochna mini', 'Ochna', Species)) %>%
  mutate(Species=gsub('Stryphnoden microstachyum', 'Stryphnodendron microstachyum', Species)) %>%
  mutate(Species=gsub('Sumpfgladiole haarig', 'Gladiolus', Species)) %>%
  mutate(Species=gsub('Sygnum ramphicarpa', 'Scrophulariaceae', Species)) %>%
  mutate(Species=replace(Species, 
               list=word(Species, 1)=="Symplococar", 
               values="Symplococarpon")) %>% 
  mutate(Species=gsub('Sysirinchium', 'Sisyrinchium', Species)) %>%
  mutate(Species=gsub('Syzigium accuminatisima', 'Syzygium acuminatissimum', Species)) %>%
  mutate(Species=gsub('Tabernaemon ', 'Tabernaemontana ', Species)) %>%
  mutate(Species=gsub('Thalassodend', 'Thalassodendron', Species)) %>%
  mutate(Species=gsub('Thinouia canescens', 'Thinouia', Species)) %>%
  mutate(Species=gsub('Thistle', 'Asteraceae', Species)) %>%
  mutate(Species=gsub('Trisetumicatum', 'Trisetum spicatum', Species)) %>%
  mutate(Species=gsub('Undetermined sedge', 'Cyperaceae', Species)) %>%
  mutate(Species=replace(Species, 
               list=word(Species, 1) %in% 
                 c("Liverwort", "Liverworts", "Moss"), 
               values="Bryophyta")) %>% 
  mutate(Species=gsub('Vismi bacci', 'Vismia baccifera subsp. ferruginea', Species)) %>%
  mutate(Species=gsub('Weidenr”schen', 'Onagraceae', Species)) %>%
  mutate(Species=gsub('Weißpelziger brauner Spross Asteracea', 'Asteraceae', Species)) %>%
  mutate(Species=gsub('Wie stipagrostis', 'Poaceae', Species)) %>%
  mutate(Species=gsub('Wincassia', 'Fabaceae', Species)) %>%
  mutate(Species=gsub('xDactyloden st-quintini', 'Dactylodenia st-quintinii', Species)) %>%
  mutate(Species=gsub('Zizyphus sp1 IUCN1', 'Zizyphus', Species)) %>%
  mutate(Species=gsub('Zwiebel Lilaceae steril', 'Lilaceae', Species)) %>%
  mutate(Species=gsub('Zwstr faurea', 'Faurea', Species)) %>% 
  mutate(Species=gsub('Quercus crispla', 'Quercus crispula', Species)) %>% 
  mutate(Species=gsub('Corallorrhiza', 'Corallorhiza', Species)) %>% 
  mutate(Species=gsub('Brunella vulgaris', 'Prunella vulgaris', Species))

A total of r nrow(spec.list.TRY.sPlot %>% filter(OriginalNames != Species)) species names were modified. Although substantially improved, the species list has still quite a lot of inconsistencies. The total list submitted to TNRS contains r length(unique(spec.list.TRY.sPlot$Species)) species names.

Match names against Taxonomic Name Resolution Service (TNRS)

Export species name list

write_csv(spec.list.TRY.sPlot %>% dplyr::select(Species) %>% distinct() ,  
          path = "../_derived/TNRS_submit/tnrs_submit_iter1.csv")

The csv-file of species names was submitted to Taxonomic Name Resolution Service web application (Boyle et al. 2013, iPlant Collaborative (2015). TNRS version 4.0 was used, which became available in August 2015 (this version also included The Plant List version 1.1). TNRS was queried on 24/02/2020.

TNRS settings {#ID}

The following settings were used for resolving names on TNRS.

Sources for name resolution {#ID}

The initial TNRS name resolution run was based on the five standard sources that were ranked according to preference in the following order (default of TNRS):

  1. The Plant List (TPL)[@TPL2013]
  2. The Global Compositae Checklist (GCC)[@Flann2009]
  3. The International Legume Database and Information Service (ILDIS)[@ILDIS2006]
  4. Tropicos [@TROPICOS2013]
  5. PLANTS Database (USDA)[@USDA2012]