![](/img/trans.png)
[英]How in Spark application create CSV file from DataFrame (Scala)?
[英]Spark: create a csv file(must use scala and dataframe)
我最近在學習scala
和dataframe
,但遇到了一個問題。 這是關於dataframe
事情。 它必須使用Scala
和Dataframe
解決,而不是SparkSQL
。
問題:
為學校創建一個包含 4 列(人、班級、科目、分數)的csv
文件,並將一些隨機數據放入 csv,每個人必須有“數學”、“英語”、“藝術”以及其他一些科目,以及至少有3個班級。
編寫一個 Spark 程序來:
讀取一個 csv 文件
顯示完整的數據表
顯示每班有多少人
顯示“數學”中得分最高的人和他的分數
我試圖解決它並用谷歌搜索它,但我想到的是使用 SQL 來解決它,而且 SQL 是谷歌給出的第一個解決方案。
我真的不知道如何通過 Spark 和 Dataframe 而不是 SparkSQL 來做到這一點,盡管教程說這是一個非常簡單的問題:(
任何人都可以幫助我,比如為我寫一個例子或給我一個例子? 太感謝了。 我會很感激的。
示例 csv 文件:
+-------+-------+---------+-------+
| name | class | subject | marks |
+-------+-------+---------+-------+
| ab | 12 | Maths | 72 |
+-------+-------+---------+-------+
| abc | 12 | Maths | 88 |
+-------+-------+---------+-------+
| abcd | 11 | Arts | 92 |
+-------+-------+---------+-------+
| abcde | 12 | English | 88 |
+-------+-------+---------+-------+
| bc | 11 | Maths | 99 |
+-------+-------+---------+-------+
| bcd | 12 | English | 55 |
+-------+-------+---------+-------+
| bcde | 11 | English | 77 |
+-------+-------+---------+-------+
| axax | 10 | Maths | 83 |
+-------+-------+---------+-------+
| amam | 10 | English | 65 |
+-------+-------+---------+-------+
| arar | 10 | Arts | 66 |
+-------+-------+---------+-------+
val df = spark.read.option("inferSchema","true").option("header","true").csv(filePath)
顯示數據框:
df.show()
顯示每班人數:
df.groupBy("class").count.show
df.filter(col("subject")==="Maths").orderBy(desc("marks")).limit(1).show
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.