【发布时间】:2015-12-10 23:46:59
【问题描述】:
有没有办法在不转换为 df 的情况下获取 rdd 的前 163 行?
我尝试过类似newrdd = rdd.take(163) 的方法,但它会返回一个列表,而rdd.collect() 会返回整个 rdd。
有没有办法做到这一点?或者如果没有,有没有办法将列表转换为 rdd?
【问题讨论】:
标签: python apache-spark pyspark rdd
有没有办法在不转换为 df 的情况下获取 rdd 的前 163 行?
我尝试过类似newrdd = rdd.take(163) 的方法,但它会返回一个列表,而rdd.collect() 会返回整个 rdd。
有没有办法做到这一点?或者如果没有,有没有办法将列表转换为 rdd?
【问题讨论】:
标签: python apache-spark pyspark rdd
效率不是很高,但你可以zipWithIndex和filter:
rdd.zipWithIndex().filter(lambda vi: vi[1] < 163).keys()
在实践中,简单的take 和parallelize 更有意义:
sc.parallelize(rdd.take(163))
【讨论】: