3
spark 1.6.1을 사용하여 csv 파일을 작성하려고합니다.spark에서 csv 파일을 쓸 수 없습니다
date,apples,peaches,pears
1990,2,2,1
1991,3,1,1
1992,1,2,2
내가 파일로드이 스칼라 코드를 사용하고 있습니다 :
spark-shell --packages com.databricks:spark-csv_2.11:1.2.0
import org.apache.spark.SparkContext
import org.apache.spark.SparkConf
import org.apache.spark.sql.SQLContext
import org.apache.spark.sql.functions._
val sqlContext = new SQLContext(sc)
var df = sqlContext.read.format("com.databricks.spark.csv").option("header","true").option("inferSchema", "true").load("data/sample.csv")
df = df.withColumn("year", df.col("date").substr(0,4))
df.groupBy("year").pivot("category").agg("category"->"count").show()
을 나는이 같은 출력 CSV 파일을 만들려면
date,category
19900108,apples
19900108,apples
19900308,peaches
19900408,peaches
19900508,pears
19910108,pears
19910108,peaches
19910308,apples
19910408,apples
19910508,apples
19920108,pears
19920108,peaches
19920308,apples
19920408,peaches
19920508,pears
: 내가 이런 csv 파일을 말해봐
이걸 실행할 때이 데이터 프레임은 내가 원하는 것입니다.
+----+------+-------+-----+
|year|apples|peaches|pears|
+----+------+-------+-----+
|1990| 2| 2| 1|
|1991| 3| 1| 1|
|1992| 1| 2| 2|
+----+------+-------+-----+
,451,515,
그러나 나는이 코드를 사용하여 CSV이를 작성하려고하면
df.coalesce(1).write.format("com.databricks.spark.csv").option("header", "true").save("mydata4.csv")
이것은 내가 무엇을 찾고하지 않은, 그것을 열 때 나는 무엇입니까 CSV 파일입니다.
date,category,year
19900108,apples,1990
19900108,apples,1990
19900308,peaches,1990
19900408,peaches,1990
19900508,pears,1990
19910108,pears,1991
19910108,peaches,1991
19910308,apples,1991
19910408,apples,1991
19910508,apples,1991
19920108,pears,1992
19920108,peaches,1992
19920308,apples,1992
19920408,peaches,1992
19920508,pears,1992
누락 된 부분이 있습니까? 내가 뭔가 잘못하고 있는거야?
감사합니다. 그랬어. – ronmac