get.eol.trait <- function(sp,trait) { if (length(trait)==0) { print("need trait") stop() } library("reol"); library("traits"); library("dplyr") pages<-DownloadSearchedTaxa(sp, to.file=F, MyKey=NULL, verbose=TRUE) pages1<-as.numeric(gsub("eol","",colnames(as.data.frame(pages)))) if (length(pages1)==0) { return("NA") } else { oid1<-traitbank(pages1) oid2<-as.data.frame(oid1[2]) oid3<-oid2[(oid2$graph.dwc.measurementtype.rdfs.label.en==trait)&!is.na(oid2$graph.dwc.measurementvalue),] oid4<-data.frame oid4<-c(oid3$graph.scientific.name[1],oid3$graph.dwc.measurementtype.rdfs.label.en[1],oid3$graph.dwc.measurementvalue[1:8]) return(oid4) } }