【发布时间】:2019-01-14 22:59:36
【问题描述】:
我正在从数据框中获取一列。该列是string 类型。
x = "[{somevalues, id:1, name:'xyz'}, {address:Some Value}, {somevalue}]" 等等..
数据以字符串形式存储。它可以很容易地表示为一个列表。 我希望输出为:
LIST of [
{somevalues, id:1, name:'xyz'},
{address:Some Value},
{somevalue}
]
如何使用 Spark 的 API 实现这一点?我知道在 Python 中我可以使用 eval(x) 函数,它会返回列表,或者我可以使用 x.split() 函数,它也会返回一个列表。但是,在这种方法中,它需要对每条记录进行迭代。
另外,我想使用mapPartition;这就是为什么我需要我的字符串列在一个列表中以便我可以将它传递给mapPartition。
有没有一种有效的方法,我也可以使用 spark API 转换我的字符串数据,或者mapPartitions 会更好,因为我将循环每个分区而不是每个记录?
【问题讨论】:
标签: python apache-spark pyspark apache-spark-sql