我有一些文本或一个大文件,我需要使用NLTK和Pyspark来计算POS标签的数量。我找不到导入文本文件的方法,因此我尝试添加一个短字符串,但失败了
计数线需要包含pyspark
##textfile = sc.textfile('')
##or
##textstring = """This is just a bunch of words to use for this example. John gave ##them to me last night but Kim took them to work. Hi Stacy. ###'''URL:http://example.com'''"""
tstring = sc.parallelize(List(textstring)).collect()
TOKEN_RE = re.compile(r"\b[\w']+\b")
dropURL=text.filter(lambda x: "URL" not in x)
words = dropURL.flatMap(lambda dropURL: dropURL.split(" "))
nltkwords = words.flatMap(lambda words: nltk.tag.pos_tag(nltk.regexp_tokenize(words, TOKEN_RE)))
#word_counts =nltkwords.map(lambda nltkwords: (ntlkwords,1))
nltkwords.take(50)
下面是一个测试字符串的示例。我想你只是错过了一个按空格分割字符串的步骤。否则整行将被删除,因为URL位于该行中
要统计pos标记的出现次数,您可以执行reduceByKey:
相关问题 更多 >
编程相关推荐