我正在编写以下代码来转换多个CSV文件的并集并将组合数据写入新文件。但我面临一个错误。
val filesData=List("file1", "file2")
val dataframes = filesData.map(spark.read.option("header", true).csv(_))
val combined = dataframes.reduce(_ union _)
val data = combined.rdd
val head :Array[String]= data.first()
val memberDataRDD = data.filter(_(0) != head(0))
类型不匹配;发现:org.apache.spark.sql.Row required:Array [String]
答案 0 :(得分:0)
您可以直接使用Spark读取多个路径:
spark.read.option("header", true).csv(filesData:_*)
答案 1 :(得分:0)
只要两个csv df具有相同的架构,就不会有任何问题
val df = spark.read.option(“ header”,“ true”)。csv(“ C:\ maheswara \ learning \ big data \ spark \ sample_data \ tmp”) val df1 = spark.read.option(“ header”,“ true”)。csv(“ C:\ maheswara \ learning \ big data \ spark \ sample_data \ tmp1”)
val dfs = List(df,df1) val dfUnion = dfs.reduce(_ union _)