我在 IBM Bluemix 上的 Apache Spark 上使用 Python 笔记本获取 JSON 格式的推文流。我想将 JSON 对象转换为数据框。我发现的最接近的是:
json_obj = {"tweet": "hey man", "name": "Alan"} #mock 示例
tweetsDF = sqlContext.read.json("文件路径")
现在,我不想加载文件。我只想获取该 JSON 变量并将其转换为数据帧格式。这样我就可以将它应用于 tweets 变量。知道怎么做吗?谢谢!
请您参考如下方法:
首先将 JSON 对象转换为 RDD[String],然后应用 `sqlContext.read.json'。这是 Scala 中的示例代码
val json_obj = sc.parallelize(Array("""{"tweet": "hey man", "name": "Alan"}""", """{"tweet": "what's up", "name": "Bertha"}"""))
val tweetsDF = sqlContext.read.json(json_obj)
tweetsDF.show()
//+------+---------+
//| name| tweet|
//+------+---------+
//| Alan| hey man|
//|Bertha|what's up|
//+------+---------+
