palantir foundry使用导入的数据集使用pyspark执行nlp操作

hiz5n14c  于 2021-07-13  发布在  Spark
关注(0)|答案(1)|浏览(530)

所以我在palantir foundry代码工作簿中运行了下面的简单代码,然后它就运行了。现在我想给它传递一个我导入的数据集,它位于我的图表中。数据集是一个pysparkDataframe,其中一列包含1000行文本。所以我想代替 text="some random text" 包含许多行的spark数据集。

import nltk.tokenize as nt
import nltk
text="Being more Pythonic is good for health."
ss=nt.sent_tokenize(text)
tokenized_sent=[nt.word_tokenize(sent) for sent in ss]
pos_sentences=[nltk.pos_tag(sent) for sent in tokenized_sent]
pos_sentences
eivnm1vs

eivnm1vs1#

在python转换中,可以将代码 Package 到udf中。自定义项的性能不是很好,但它允许您准确地编写代码。即。:

def tokenize(text):
   ss=nt.sent_tokenize(text)
   tokenized_sent=[nt.word_tokenize(sent) for sent in ss]
   return [nltk.pos_tag(sent) for sent in tokenized_sent]

tokenize_udf = F.udf(translate, T.StringType())

df.withColumn("result", tokenize_udf(F.col("text")))

相关问题