如何将值列表传递到 json+sparksql 中的 rdd

Posted

技术标签:

【中文标题】如何将值列表传递到 json+sparksql 中的 rdd【英文标题】:How to pass list of values into rdd in json+sparksql 【发布时间】:2015-05-26 11:45:11 【问题描述】:

如何将值列表传递到 rdd = sqlContext.jsonFile("tmp.json")

我有列表list1=["name","age","gener",........]

rdd_new=rdd.map(lambda x:x.(i want all list values)

【问题讨论】:

【参考方案1】:

我不确定你在这里的意思。如果要使用 map 函数中的外部列表,请将该列表设为广播变量,以便所有函数都可以使用该列表的只读副本。这是一个例子:

广播> 广播列表 = sc.broadcast(list1); 最终列表 query_list = broadlist.value();

现在您可以在 map 函数中访问 query_list ,就好像它是一个全局变量一样。 请告诉我这是否是您想要的。

【讨论】:

>>> 从 pyspark.sql 导入 SQLContext >>> sqlContext = SQLContext(sc) >>> rdd =sqlContext.jsonFile("tmp.json") >>> rdd_new= rdd.map( lambda x:x.name,x.age) 它工作正常。但是有 值列表 list1=["name","age","gene","xyz",... ..] 当我在 list1 中传递 For each_value 时:rdd_new=rdd.map(lambda x:x.each_valuefrom list1) 我收到错误

以上是关于如何将值列表传递到 json+sparksql 中的 rdd的主要内容,如果未能解决你的问题,请参考以下文章

如何将值从动态列表视图传递到活动?

如何将值从列表视图传递到 detalis Activity

如何将值从基本适配器传递到 Android 中的 Activity

如何将值从 ajax 传递到 portlet 页面

如何将值从模板传递到 ts 函数

如何将值从一个JFrame传递到另一个JFrame?