Необъяснимое поведение с PySpark и сброс нуля - PullRequest
0 голосов
/ 07 октября 2018

У меня есть Spark DataFrame в PySpark, из которого я пытаюсь удалить нули.

Раньше при очистке во время синтаксического анализа я запускал метод convert_to_null для столбца title, который в основном проверяет, содержит ли строка буквально "None", и, если это так, преобразует его в фактический * 1006.*.Таким образом, Spark преобразует его во внутренний нулевой тип.

Теперь я пытаюсь удалить строки с этим нулевым типом в столбце title.Вот все, что я пытался удалить мои нули:

new_df = df.na.drop('title')

new_df = df[F.col('title').isNotNull()]

new_df = df[~F.col('title').isNull()]

Но я всегда получаю этоошибка при new_df.show() вызове через несколько строк:

Py4JJavaError: An error occurred while calling o2022.showString. : org.apache.spark.SparkException: Job aborted due to stage failure: Task 1 in stage 87.0 failed 1 times, most recent failure: Lost task 1.0 in stage 87.0 (TID 314, localhost, executor driver): org.apache.spark.api.python.PythonException: Traceback (most recent call last): File "/usr/local/spark/python/lib/pyspark.zip/pyspark/worker.py", line 230, in main process() File "/usr/local/spark/python/lib/pyspark.zip/pyspark/worker.py", line 225, in process serializer.dump_stream(func(split_index, iterator), outfile) File "/usr/local/spark/python/lib/pyspark.zip/pyspark/serializers.py", line 324, in dump_stream self.serializer.dump_stream(self._batched(iterator), stream) File "/usr/local/spark/python/lib/pyspark.zip/pyspark/serializers.py", line 139, in dump_stream for obj in iterator: File "/usr/local/spark/python/lib/pyspark.zip/pyspark/serializers.py", line 313, in _batched for item in iterator: File "<string>", line 1, in <lambda> File "/usr/local/spark/python/lib/pyspark.zip/pyspark/worker.py", line 75, in <lambda> return lambda *a: f(*a) File "/usr/local/spark/python/pyspark/util.py", line 55, in wrapper return f(*args, **kwargs) File "<ipython-input-16-48bc3ec1b5d9>", line 5, in replace_none_with_null TypeError: 'in <string>' requires string as left operand, not NoneType

Я думаю, что схожу с ума.Я понятия не имею, как все исправить.Любая помощь приветствуется.Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...