在SPARK上将JSON对象转换为DataFrame

时间:2016-01-19 01:09:53

标签: python json apache-spark dataframe ibm-cloud

我在IBM Bluemix上的Apache Spark上使用Python笔记本获得了JSON格式的推文流。我想将JSON对象转换为数据帧。我发现最接近的是:

json_obj = {"tweet": "hey man", "name": "Alan"} #mock example

tweetsDF = sqlContext.read.json("file path")

现在,我不想加载文件。我只想把那个JSON变量转换成数据帧格式。这样我就可以将它应用于tweets变量。知道怎么做吗?谢谢!

1 个答案:

答案 0 :(得分:6)

首先将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|
//+------+---------+