如何在pyspark数据帧上应用nltk.pos_标记

如何在pyspark数据帧上应用nltk.pos_标记,pyspark,nltk,pos,Pyspark,Nltk,Pos,我试图在pyspark dataframe中一个名为“removed”的标记化列上应用词性标记 我正试着和你谈谈 nltk.pos_tag(df_removed.select("removed")) 但我得到的只是值错误:ValueError:无法对列应用“in”运算符:请在字符串列中使用“contains”,或对数组列使用“array\u contains”函数。 我怎样才能做到 答案似乎在错误消息中:pos_tag的输入应该是一个字符串,您提供了一个列输入。您应该使用函数withColum

我试图在pyspark dataframe中一个名为“removed”的标记化列上应用词性标记

我正试着和你谈谈

nltk.pos_tag(df_removed.select("removed"))
但我得到的只是值错误:
ValueError:无法对列应用“in”运算符:请在字符串列中使用“contains”,或对数组列使用“array\u contains”函数。


我怎样才能做到

答案似乎在错误消息中:
pos_tag
的输入应该是一个字符串,您提供了一个列输入。您应该使用函数
withColumn

例如,您可以从以下内容开始:

my_new_df=df_removed.withColumn(“removed”,nltk.pos_标签(df_removed.removed))
您还可以执行以下操作:

my_new_df = df_removed.select("removed").rdd.map(lambda x: nltk.pos_tag(x)).toDF()

您有文档。

答案似乎在错误消息中:
pos\u标签的输入应该是一个字符串,您提供了一个列输入。您应该使用函数
withColumn

例如,您可以从以下内容开始:

my_new_df=df_removed.withColumn(“removed”,nltk.pos_标签(df_removed.removed))
您还可以执行以下操作:

my_new_df = df_removed.select("removed").rdd.map(lambda x: nltk.pos_tag(x)).toDF()

您有文档。

谢谢,但我有一个错误,
DataFrame'对象没有属性“map”
df\u已删除。选择(“已删除”).map(nltk.pos\u标记)
您能告诉我该代码中的“rdd”发生了什么变化吗?我是pyspark的新手,我想了解它。不幸的是,此代码不适用于我:(我知道Py4Java ErrorRDD是一个允许执行操作的类。您的错误到底是什么?Py4JJavaError:调用z:org.apache.spark.api.PythonRDD.runJob时出错:org.apache.spark.sparkeException:作业由于阶段失败而中止:阶段18.0中的任务0失败1次,最近的失败:阶段18.0中的任务0丢失。)(TID 483,localhost,executor driver):org.apache.spark.sparkeexception:Python worker无法连接回。谢谢,但我有一个错误,
DataFrame'对象没有属性“map”
df_removed.select(“removed”).map(nltk.pos_标记)
您能告诉我什么是“rdd”吗该代码是否发生了变化?我是pyspark的新手,我想了解它。不幸的是,该代码不适用于我:(我知道Py4Java ErrorRDD是一个允许执行操作的类。您的错误到底是什么?Py4JJavaError:调用z:org.apache.spark.api.PythonRDD.runJob时出错:org.apache.spark.sparkeException:作业由于阶段失败而中止:阶段18.0中的任务0失败1次,最近的失败:阶段18.0中的任务0丢失。)(TID 483,localhost,executor驱动程序):org.apache.spark.SparkException:Python工作程序无法连接回。