[英]Spark CSV with various delimiters into DataSet
我有兩個CSV文件 ,我使用spark與Java聚合。 這些文件具有不同的分隔符。
file1.dat:
011!345!Ireland
files2.dat:
022Ç486ÇBrazil
我使用的代碼:
Dataset<Row> people = spark.read().format("csv").option("header", "false").option("delimeter", "\u00C7").option("delimeter", "!").load(logFile);
輸出:
Error:Cannot resolve column name
如果我刪除一個分隔符:
Dataset<Row> people = spark.read().format("csv").option("header", "false").option("delimeter", "\u00C7").load(logFile);
輸出:
Sno|code|Country
null|null|null
022|486|Brazil
有辦法執行此操作嗎? 這兩個文件可以在同一個火花代碼中聚合嗎?
您不能同時使用多個分隔符。
相反,分別讀取文件並使用union
( doc )將它們合並在一起。 例如:
Dataset<Row> people1 = spark.read()
.option("header", "false")
.option("delimeter", "!")
.csv(logFile1);
Dataset<Row> people2 = spark.read()
.option("header", "false")
.option("delimeter", "\u00C7")
.csv(logFile2);
Dataset<Row> people = people1.union(people2);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.