Je m'excuse si cette question a été posée avec la terminologie que je ne reconnais pas, mais il ne semble pas être.automatiser l'entrée à la requête de l'utilisateur dans R
J'utilise la fonction comm2sci
dans la bibliothèque taxize
pour rechercher les noms scientifiques d'une base de données de plus de 120 000 lignes de noms communs. Voici un sous-ensemble de 10:
commnames <- c("WESTERN CAPERCAILLIE", "AARDVARK", "AARDWOLF", "ABACO ISLAND BOA",
"ABBOTT'S DAY GECKO", "ABDIM'S STORK", "ABRONIA GRAMINEA", "ABYSSINIAN BLUE
WINGED GOOSE",
"ABYSSINIAN CAT", "ABYSSINIAN GROUND HORNBILL")
Lors de la recherche avec la base de données NCBI dans cette fonction, il demande l'entrée d'utilisateur si le nom commun est générique/général et non des espèces spécifiques, par exemple l'appel suivant demandera clarification pour "AARDVARK" en entrant "1", "2" ou "return" pour "NA".
install.packages("taxize")
library(taxize)
ncbioutput <- comm2sci(commnames, db = "ncbi")###querying ncbi database
À cause de cela, je ne peux pas compter sur cette fonction pour trouver les noms des espèces 120000 sans moi assis et en entrant « retour » toutes les quelques minutes. Je sais que cette question est spécifique à taxize
- mais j'ai déjà eu cette situation dans le passé avec d'autres fonctions. Ma question est la suivante: existe-t-il un moyen général de placer l'appel comm2sci
dans une instruction conditionnelle qui renverra une valeur spécifique lorsque l'utilisateur est invité à entrer? Ou sinon écrire une fonction qui retournera une entrée lorsque vous y êtes invité?
Toutes les recherches liées à ce point indiquent comment demander une entrée utilisateur, mais pas comment remplacer les requêtes utilisateur. Ce sont deux des fils de questions que j'ai trouvés, mais je n'arrive pas à les appliquer à ma situation: Make R wait for console input?, Switch R script from non-interactive to interactive
J'espère que c'était clair. Merci beaucoup pour votre temps!
Je viens d'exécuter votre code, et on m'a seulement demandé d'entrer '1' ou '2' quand il y avait plus d'un UID pour le taxon' AARDVARK' - est-ce que vous voulez automatiser ?? –
Oui exactement, avec 120 000 observations, il n'y a aucun moyen de s'asseoir et d'entrer 1 ou 2 avec chaque nom commun ambigu. Y a-t-il un moyen d'automatiser l'entrée? –
Avez-vous essayé d'envoyer un courriel à l'auteur de la fonction? Je vois un email trouvé '' comm2sci' qui peut conduire à une solution simple. –