用pyspark和sparkDataframe进行空间分析

pgx2nnw8  于 2021-05-29  发布在  Spark
关注(0)|答案(0)|浏览(301)

我在pyspark中使用sparkDataframe并尝试使用spacy\u解析。我遇到了麻烦,因为在python中,运行spacy\u parse()并用我的所有结果(token、lemma、pos等)生成一个新的Dataframe非常简单。我不知道如何在pyspark中做到这一点,因为我只知道withcolumn功能一次添加一个新列,而不是创建一个完整的新Dataframe。我有一个复习句子的数据集,如下所示:

SENTENCE_ID     REVIEW_SENTENCE      
    1               Love it.
    2               Worked awesome.
    3               This thing sucks.

我想要表单的输出:

SENTENCE_ID  REVIEW_SENTENCE      TOKEN                 LEMMA
    1         Love it.             (love, it)           (love, it)
    2         Worked awesome.      (worked, awesome)    (work, awesome)
    3         This thing sucks.    (this, thing, sucks) (this, thing, suck)

我尝试使用的代码失败了,因为它生成了多个列作为输出。

import spacy
from pyspark.sql.functions import udf

nlp = spacy.load("en_core_web_sm")

def spacy_test(text_col):
    return spacy_parse(text_col)

spacy_udf = udf(spacy_test)

reviews_test = reviews.withColumn('spacy_output', spacy_udf('REVIEW_SENTENCE'))

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题