#json #apache-spark #pyspark
Вопрос:
У меня есть небольшая настройка кластера Spark 3.x. Я прочитал некоторые данные и после преобразований должен сохранить их в формате JSON. Но проблема, с которой я сталкиваюсь, заключается в том, что в столбцах типа массива Spark добавляет дополнительные двойные кавычки при записи в файл json. Пример данных-данные фрейма
Я сохраняю этот кадр данных в формате JSON со следующей командой
df.write.json("Documents/abc")
Ответ №1:
Элементы строкового массива содержат двойные кавычки внутри данных, например, первый элемент "Saddar Cantt, Lahore Punjab Pakistan"
вместо Saddar Cantt, Lahore Punjab Pakistan
. Вы можете удалить дополнительные двойные кавычки из строк перед написанием json с помощью преобразования и замены:
df.withColumn("ADDRESS", F.expr("""transform(ADDRESS, a -> replace(a, '"'))"""))
.write.json("Documents/abc")
Комментарии:
1. Спасибо, что если мне придется удалить символ новой строки вместо двойной кавычки.
2. @HafizMuhammadShafiq ты можешь попробовать
transform(ADDRESS, a -> replace(a, 'n'))
?