首页 > 解决方案 > Spark 从第二行读取,如 Pandas header=1

问题描述

在带有 Python 的 Pandas 中,我可以使用:

for item in read_csv(csv_file, header=1)

在 Spark 中,我只能选择真/假?

df = spark.read.format("csv").option("header", "true").load('myfile.csv')

如何从 Spark 的第二行开始阅读?建议的重复帖子是 Spark 的过时版本。我正在使用最新的 2.4.3。

标签: pythoncsvapache-sparkpysparkapache-spark-sql

解决方案


看起来 spark csv 中没有选项来指定要跳过的行数。以下是您可以尝试的一些替代方案:

  1. 使用 读取option("header", "true"),并使用 重命名列名withColumnRenamed
  2. 使用 读取option("header", "false"),并使用 select 从第二行中选择行。
  3. 如果第一行的第一个字符与所有其他行不同,您可以使用comment选项跳过它。例如,如果第 1 行的第一个字符是D,则设置comment='D'. 请注意,将跳过以此处comment开头的任何行。D

希望这可以帮助。


推荐阅读