Je suis cet article https://mylearnmachinelearning.com/category/linear-regression/ pour créer un extracteur d'entités nommées. Comme requis, j'ai installé tous les en utilisant ceci: entités (text_doc, kind = "person") . Le truc, c'est que même l'intellisense dans RStudio ne semble connaître aucune fonction Il existe même une YouTube / a> qui démontre la même chose. Étrangement, il peut y utiliser des Versions du package: openNLP: v0.2-6 openNLPmodels.fr: v1.5-1 rJava - v0.9-9 magrittr - v1.5 PNL - v0.2-0 openNLP , NLP , rJava , magrittr et openNLPmodels.en packages. Tout s'est déroulé comme prévu sauf lors de l'utilisation de cette fonction annotations # Extract entities from an AnnotatedPlainTextDocument
entities <- function(doc, kind) {
s <- doc$content
a <- annotations(doc)[[1]] #Point of error
if(hasArg(kind)) {
k <- sapply(a$features, `[[`, "kind")
s[a[k == kind]]
} else {
s[a[a$type == "entity"]]
}
}
annotations . Il affiche les annotations , annotate et annotations_in_spans et autres, mais il n'y a pas d ' annotations . annotations .
3 Réponses :
La fonction annotations est dans de nombreux packages, veuillez voir ici:
https://www.rdocumentation.org/search?q=annotations p >
Bien que ce ne soit probablement pas le meilleur moyen, si vous recherchez une fonction spécifique sans savoir à quel package appartient la fonction, ce site peut vous aider à trouver un tel package.
Il n'y a pas de package OpenSNP. Vous pensez à rsnps , qui permet d'accéder aux données OpenSNP. Et ce paquet est pour l'analyse des données génétiques, non liées à la PNL.
Je suis corrigé et mis à jour la réponse. La destination particulière d'un colis n'a pas toujours d'importance. Ma réponse est plus large et peut être utilisée pour traiter n'importe quel type de questions comme "dans quel package puis-je trouver cette fonction". J'espère que cela sert les autres mieux que vous.
Vous avez raison de dire que le site de documentation est une excellente ressource pour rechercher des fonctions. Cependant, étant donné que la question d'origine se réfère à la PNL et que les fonctions proviennent de ce package, il n'est pas utile de les pointer vers un package non pertinent. Supprimez la référence à rsnps et vous constaterez peut-être que le vote négatif ennuyeux disparaît :)
La méthode annotations était associée aux objets de type AnnotatedPlainTextDocument dans les versions antérieures du package NLP .
Voici la documentation de la version 0.1 -11.
La dernière version de NLP est 0.2-0. p>
La méthode pour AnnotatedPlainTextDocument est désormais appelée annotation (pas de 's' à la fin). D'après la documentation, il semble que la principale différence soit qu'il renvoie un objet Annotation , pas une liste d'objets Annotation .
essayez ceci:
# Extract entities from an AnnotatedPlainTextDocument
entities <- function(doc, kind) {
s <- doc$content
a <- annotation(doc)
if(hasArg(kind)) {
k <- sapply(a$features, `[[`, "kind")
s[a[k == kind]]
} else {
s[a[a$type == "entity"]]
}
}
J'ai installé le coreNLP de l'Université de Stanford, l'ai ajouté à la liste des bibliothèques requises et supprimé le [[1]] qui était répertorié après l'annotation (doc) et il s'est exécuté avec succès.
+1 pour m'avoir rendu instantanément dans ma jeunesse en utilisant le mot intellisense - la bonne vieille période Visual Basic et Excel de ma vie :)