小编Hel*_*ack的帖子

PySpark 无法正确读取 CSV

我正在使用 .Pandas 数据框将数据保存到 csv 文件(包含 318477 行)df.to_csv("preprocessed_data.csv")。当我使用以下命令将此文件加载到另一个笔记本中时:

df = pd.read_csv("preprocessed_data.csv")
len(df)

# out: 318477
Run Code Online (Sandbox Code Playgroud)

行数符合预期。但是,当我尝试使用 PySpark 加载数据集时:

spark_df = spark.read.format("csv")
                     .option("header", "true")
                     .option("mode", "DROPMALFORMED")
                     .load("preprocessed_data.csv")
spark_df.count()

# out: 6422020
Run Code Online (Sandbox Code Playgroud)

或者

df_test = spark.sql("SELECT * FROM csv.`preprocessed_data.csv`")
df_test.count()

# out: 6422020
Run Code Online (Sandbox Code Playgroud)

行数不正确。它读取的行数 6422020 是 csv 文件中的行数。由于有些行的内容跨越多行(即https://i.stack.imgur.com/PwvCg.jpg

我怎么解决这个问题?我是否需要以某种方式保存 csv,并且在任何文本中都没有换行符,或者我可以更具体地指定 PySpark 中的 csv 读数吗?

这是我上一个问题的继续,我现在了解问题更多链接

CSV 文件中的行:

120,teacher industrial design technology mabel park state high school,teach queensland,2018-10-07,brisbane,southern suburbs logan,education training,teaching secondary,mabel park state high school invites applications for …
Run Code Online (Sandbox Code Playgroud)

python csv pandas pyspark

3
推荐指数
1
解决办法
5095
查看次数

标签 统计

csv ×1

pandas ×1

pyspark ×1

python ×1