Руководство по загрузке CSV в Dataframe с символами новой строки с использованием Apache Spark и Databricks.

Загрузка простого CSV в Dataframe очень проста в Spark. Но это становится беспорядочным, когда между необработанными данными есть новые символы строки.

Взгляните на пример данных. В первой строке есть дополнительный символ новой строки после слова «Rachel green».

id,name,description,status
1,rachel,"rachel green 
started her career at central perk",true
2,joey,"joey tribainni's fav line is, how you doing?",true

При загрузке в фрейм данных это выглядит так

%python
file_location = "/FileStore/tables/multilinetext_csv.bz2"
file_type ="csv"
df = spark.read.format(file_type) \
  .option("inferSchema", "true") \
  .option("header", "true") \
  .option("sep", ",") \
  .load(file_location)
display(df)

Как только проблема выявлена, исправить ее очень просто. Добавьте еще один параметр в «multiLine», «true».

Упоминание символа кавычки является необязательным.

%python
file_type ="csv"
df = spark.read.format(file_type) \
  .option("inferSchema", "true") \
  .option("header", "true") \
  .option("sep", ",") \
  .option("multiLine", "true") \
  .option("quote","\"") \
  .load(file_location)
display(df)

Если вам нравятся мои статьи, вы можете подписаться на них.





Больше контента на plainenglish.io