Je voudrais savoir s'il est possible d'extraire nom + nom ou (adj | nom) + nom dans R paquet openNLP? C'est, je voudrais utiliser le filtrage linguistique pour extraire les noms nominaux candidats. Pourriez-vous me dire comment faire? Merci beaucoup.Extraction nom + nom ou (adj | nom) + nom du texte
Merci pour les réponses. voici le code:
library("openNLP")
acq <- "Gulf Applied Technologies Inc said it sold its subsidiaries engaged in
pipeline and terminal operations for 12.2 mln dlrs. The company said
the sale is subject to certain post closing adjustments,
which it did not explain. Reuter."
acqTag <- tagPOS(acq)
acqTagSplit = strsplit(acqTag," ")
acqTagSplit
qq = 0
tag = 0
for (i in 1:length(acqTagSplit[[1]])){
qq[i] <-strsplit(acqTagSplit[[1]][i],'/')
tag[i] = qq[i][[1]][2]
}
index = 0
k = 0
for (i in 1:(length(acqTagSplit[[1]])-1)) {
if ((tag[i] == "NN" && tag[i+1] == "NN") |
(tag[i] == "NNS" && tag[i+1] == "NNS") |
(tag[i] == "NNS" && tag[i+1] == "NN") |
(tag[i] == "NN" && tag[i+1] == "NNS") |
(tag[i] == "JJ" && tag[i+1] == "NN") |
(tag[i] == "JJ" && tag[i+1] == "NNS"))
{
k = k +1
index[k] = i
}
}
index
lecteur peut se référer index sur acqTagSplit faire nom + nom ou (adj | nom) + nom extractation. (Le code n'est pas optimal mais fonctionne Si vous avez une idée, s'il vous plaît faites le moi savoir.)
En outre, j'ai toujours un problème.
Justeson et Katz (1995) ont proposé une autre filtrage linguistique pour extraire des phrases candidats substantif:
((Adj | Noun) + | ((Adj | Noun) (Noun-Prep)) (Adj | Noun)) nom
Je ne peux pas comprendre sa signification. Pourriez-vous me rendre un service pour l'expliquer ou transformer une telle représentation en langage R. Merci beaucoup.
Posté ce que je pense est une solution propre. Votre demande ultérieure est une extension considérable de la question initiale. Je pense que vous devriez fermer celui-ci et poser une autre question. –
@DWin: Je ne pense pas. C'est juste d'ajouter des conditions supplémentaires. De plus, traduire cela en R serait une question pour les mineurs de texte, pas pour les programmeurs. Je suggère de lire l'article de Justeson et Katz pour avoir son sens. –
@Joris: Il y avait un couple de nouveaux opérateurs "+" et "?" que je n'ai pas compris. Je pensais qu'ils pourraient traduire en regex d'une certaine manière, inconnu pour moi cependant, et la citation n'était pas disponible sur une recherche sur le Web. J'ai donc pensé que le repostage serait une meilleure approche, étant donné que la question initiale avait été traitée à la fois par le PO et par mes efforts de rationalisation. –