如何基于多个 JSON 文件创建 DataFrame
Posted
技术标签:
【中文标题】如何基于多个 JSON 文件创建 DataFrame【英文标题】:How to create DataFrame based on multiple JSON files 【发布时间】:2018-02-02 13:23:52 【问题描述】:我在一个文件夹中有很多 JSON 文件。它们都具有相同的结构。现在我要创建DataFrame,每个JSON文件都应该是这个DataFrame所在的行。
我知道如何基于单个 JSON 字符串创建 DataFrame,但我不知道如何处理多个:
import spark.implicits._
val jsonStr = """ "key": 111, "value": 54, stamp: "aaa""""
val df = spark.read.json(Seq(jsonStr).toDS)
【问题讨论】:
【参考方案1】:假设您的 JSON 在文件夹 src/main/resources
中
以下代码将产生所需的结果:
private val df: DataFrame = spark.read.json("src/main/resources")
df.show()
+---+-----+-----+
|key|stamp|value|
+---+-----+-----+
|111| aaa| 54|
|111| aaa| 54|
+---+-----+-----+
请注意,JSON 应该是机器可读的,而不是人类可读的(这意味着 JSON 不应该有换行符。
【讨论】:
我应该为上面导入什么库? @Sade 它是 spark-sql 库中的类以上是关于如何基于多个 JSON 文件创建 DataFrame的主要内容,如果未能解决你的问题,请参考以下文章
pandas一些基本操作(DataFram和Series)_3