NLP:从SparkNLP中的pyspark数据框中删除一些特殊实体名称

问题描述

我正在尝试从databrick上的SparkNLP中的pyspark数据框中删除一些特殊的实体名称

例如,某些公司名称,例如ibm,IBM,诺基亚,诺基亚。

df:

     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,因为数据帧大小很大。

谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...