【发布时间】:2019-10-09 08:36:56
【问题描述】:
我运行了一些测试,得到的结果是小型 DataFrame,大约有 3-6 列和 10-20 行。现在我想将这封电子邮件发送给我的同事,为了方便起见,我希望它采用表格格式作为 DataFrame 而不是 Json 的 scala 映射。
所以,我想将 DataFrame 转换为 HTML 表格,我可以在电子邮件中附加。(这将在 DataBricks 的自动任务运行后自动完成)
到目前为止,我已经尝试将 DataFrame 转换为 Scala 映射,然后将映射转换为 Json。但在 Scala 中找不到将 json 转换为 HTML 的任何东西。
我正在使用此代码将 df 转换为映射:
val DataFrameToArray = df.collect.map(r => Map(df.columns.zip(r.toSeq):_*))
下面给出数组映射的结果(抱歉忘了提):
DataFrameToArray: Array[scala.collection.immutable.Map[String,Any]] = Array(map(Name -> Ross, Age -> 31, Gender -> Male), map(Name -> Monica, Age -> 28, Gender -> Female), map(Name -> Joey, Age -> 32, Gender -> Male), map(Name -> Rach, Age -> 29, Gender -> Female))
现在我正在使用以下代码将其转换为数组:
val newJson = compactRender(decompose(DataFrameToArray))
结果如下:
newJson: String = [{"Name":"Ross","Age":31,"Gender":"Male"},{"Name":"Monica","Age":28,"Gender":"Female"},{"Name":"Joey","Age":32,"Gender":"Male"},{"Name":"Rach","Age":29,"Gender":"Female"}]
所以我不太可能将它添加到用户案例类中,或者如果你可以在这里提供帮助。
【问题讨论】:
标签: html json scala apache-spark-sql scala-collections