我正在研究poc,我需要在其中创建数据帧,然后将其保存为ctrl分隔文件。 下面是创建中间结果的查询
val grouped = results.groupBy("club_data","student_id_add","student_id").agg(sum(results("amount").cast(IntegerType)).as("amount"),count("amount").as("cnt")).filter((length(trim($"student_id")) > 1) && ($"student_id").isNotNull)
将结果保存到文本文件中
grouped.select($"club_data", $"student_id_add", $"amount",$"cnt").rdd.saveAsTextFile("/amit/spark/output4/")
输出:
[amit,DI^A356035,581,1]
它将数据保存为逗号分隔,但我需要将其保存为ctrl-A分隔 我尝试了option(“delimiter”,“\u0001”),但似乎dataframe/rdd不支持它。
有什么有用的功能吗?
如果您有一个数据帧,您可以使用Spark CSV作为CSV写入,分隔符如下。
使用旧版本的Spark
你可以读如下
如果有RDD,则可以对
RDD
使用mkString()
函数,并使用saveAsTextFile()
保存希望这有帮助!
保存前将行转换为文本:
相关问题 更多 >
编程相关推荐