nlp:从sparknlp中的pysparkDataframe中删除一些特殊的实体名称

0dxa2lsx  于 2021-05-27  发布在  Spark
关注(0)|答案(0)|浏览(260)

我试图从databricks上sparknlp的pysparkDataframe中删除一些特殊的实体名称。
例如,一些公司名称,如ibm、ibm、nokia、nokia。
测向:

text
     All know that ibm and Nokia are some companies in IT ....

我的py3代码:

stop_words_cleaner = StopWordsCleaner()\
    .setInputCols(["after_spell_check"])\
    .setOutputCol("cleanTokens")\
    .setCaseSensitive(False)\
    .setStopWords(my_stopwords) # add "ibm", "IBM", "Nokia" as stop words

我也试过:

import pyspark.sql.functions as F
test_df.withColumn("text", F.expr("transform(text, x -> trim(replace(x, 'ibm', '')))" ) ).show()

它不起作用。另外,我需要删除一个实体列表,而不仅仅是一个单词。
我试着添加“ibm”作为停止词,但它不起作用,因为停止词必须是英语单词。
我不能使用spacy,因为Dataframe的大小很大。
谢谢

暂无答案!

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

相关问题