附加具有不同标题顺序的多个CSV文件

时间:2018-02-21 18:37:25

标签: python csv apache-spark pyspark

我有一个目录,其中包含具有相同列但不是相同顺序的CSV文件。我想将它们附加到一个CSV文件中但是当使用以下代码执行 pyspark 时,我得到了csv但内部有混合数据(即它没有正确地整理列的顺序) )。

from pyspark import SparkContext

from pyspark.sql import SQLContext

from pyspark.sql.functions import col


sc = SparkContext("local", "Simple App")

sqlContext = SQLContext(sc)

df = sqlContext.read.format('com.databricks.spark.csv').options(header='true', inferschema='true').load('/myPATH/TO_THE_CSV_FILES/')
df.coalesce(1).write.option("header", "true").format('com.databricks.spark.csv').save('/myPATH/TO_APPENDED_CSV_FILE/')

1 个答案:

答案 0 :(得分:1)

你可以用一点技巧。

cols = a.columns

a = a.select(cols)
b = b.select(cols)

c = a.union(b)