2017-02-28 116 views
0

我想在spark中读取CSV。所以我在java中使用这个命令。spark - 如何添加字段名称,何时spark会读取csv,其中无头

result = sparkSession.read().csv("hdfs://master:9000/1.csv"); 

它works.Buts结果却喜欢:

_c0 _c1 _c2 
1  egg T 
2  bob F 
3  tom D 

但文件(1.csv)没有头,该result'head没用

我想结果是这样的:

ID Name Class 
1  egg T 
2  bob F 
3  tom D 

我该怎么办?

谢谢大家。

回答

0

可以重命名列:

result.withColumnRenamed("_c0", "id").withColumnRenamed("_c1", "name").withColumnRenamed("_c2", "class") 
当然

,如果CSV有一个头,你可以简单地做:

result = sparkSession.read().option("header", "true").csv("hdfs://master:9000/1.csv"); 
+0

谢谢。 Mariusz'answer对我更好。 – egg