finden Sie die ursprüngliche Frage hier auf hackerrankNLP-POS Herausforderung
Obwohl meine Lösung unvollständig jemand helfen kann, ist mir bitte zu verstehen, wohin ich gehe falsch? (In der zweiten Funktion gibt die Tagger einen 2-Buchstaben-Tag, obwohl die Frage nach einem fragt 3-Buchstaben-Tag. Vielen Dank!
import re
import nltk
import string
final_tagged = ""
raw_input(strs)
def tokenize_two(i):
temp = i
global strs
"remove /?? and pos tag"
for ch in ['/??']:
if ch in i:
i=i.replace(ch,"")
#pos tagging
tag = nltk.pos_tag([i])
for item in tag:
for ch in ['??']:
if ch in temp:
temp = temp.replace(ch,item[1])
replace = i+"/??"
strs = string.replace(strs,replace,temp)
return temp;
def tokenize_three(i):
"remove /??? and pos tag"
temp = i
global strs
for ch in ['/???']:
if ch in i:
i=i.replace(ch,"")
tag = nltk.pos_tag([i])
for item in tag:
for ch in ['???']:
if ch in temp:
temp = temp.replace(ch,item[1])
replace = i+"/???"
strs = string.replace(strs,replace,temp)
return temp;
a = [w for w in re.split('\s+',strs)]
for i in a :
if(i.endswith("/??")):
tagged = tokenize_two(i)
if(i.endswith("/???")):
final_tagged = tokenize_three(i)
print strs
Ich weiß nicht, wie ich das vermisste. – CyberDuck