У меня есть один столбец pyspark.sql.dataframe.DataFrame (comments), это выглядит так:
+--------------------+
| comment|
+--------------------+
| nan|
| nan|
| nan|
|So far it has per...|
|I purchased it fo...|
+--------------------+
Непосредственно из этого фрейма данных я отобразил функцию следующим образом:
tokens_rdd = comments.select('comment').rdd.flatMap(lambda x: word_tokenizer(x))
После этого я преобразовал СДР обратно во фрейм данных следующим образом:
tokens = sq.createDataFrame(tokens_rdd,comments.schema)
После этого я пытаюсь показать первые пять строк фрейма данных, но получаю следующую ошибку:
Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.runJob.
: org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 2.0 failed 1 times, most recent failure: Lost task 0.0 in stage 2.0 (TID 3, localhost, executor driver): java.net.SocketException: Connection reset
Я использую pyspark 2.4.0 локально, и я сопоставляю функцию:
def word_tokenizer(x):
import nltk
lowerW = x.lower()
return nltk.word_tokenize(x)
Я пробовал несколько способов конвертировать СДР в DF, но у меня естьне удалось показать данные, может быть, кто-то может помочь мне разобраться в этом.
Заранее спасибо.