Pyspark 无法应用Spark用户定义的函数

Pyspark 无法应用Spark用户定义的函数,pyspark,apache-spark-sql,user-defined-functions,Pyspark,Apache Spark Sql,User Defined Functions,我已经尝试了很多次来应用一个函数,该函数对包含一些文本字符串的spark数据帧进行了一些修改。下面是相应的代码,但它总是给我这个错误: 调用o699.showString时出错。 :org.apache.spark.sparkeexception:作业因阶段失败而中止:阶段27.0中的任务0失败1次,最近的失败:阶段27.0中的任务0.0丢失(TID 29,本地主机,执行器驱动程序): 您的示例有点混乱:什么是df_测试,如何使用数据?我也看不到你正在导入udf。请查看此文档:谢谢Voldymy

我已经尝试了很多次来应用一个函数,该函数对包含一些文本字符串的spark数据帧进行了一些修改。下面是相应的代码,但它总是给我这个错误:

调用o699.showString时出错。
:org.apache.spark.sparkeexception:作业因阶段失败而中止:阶段27.0中的任务0失败1次,最近的失败:阶段27.0中的任务0.0丢失(TID 29,本地主机,执行器驱动程序):


您的示例有点混乱:什么是
df_测试
,如何使用
数据
?我也看不到你正在导入
udf
。请查看此文档:谢谢Voldymyr,我找到了这本图图,它很有用,但问题似乎来自我的数据结构
import os
import sys
from pyspark.sql import SparkSession

#!hdfs dfs -rm -r nixon_token*

spark = SparkSession.builder \
          .appName("spark-nltk") \
          .getOrCreate()

data = spark.sparkContext.textFile('1970-Nixon.txt')

def word_tokenize(x):
    import nltk
    return str(nltk.word_tokenize(x))
test_tok = udf(lambda x: word_tokenize(x),StringType())
resultDF = df_test.select("spans", test_tok('spans').alias('text_tokens'))
resultDF.show()