Python Spark Dataframes:将组导出到文本文件的更好方法

bco*_*ins 12 python dataframe apache-spark

我想将数据导出为单独的文本文件; 我可以用这个黑客做到这一点:

for r in sqlContext.sql("SELECT DISTINCT FIPS FROM MY_DF").map(lambda r: r.FIPS).collect():
    sqlContext.sql("SELECT * FROM MY_DF WHERE FIPS = '%s'" % r).rdd.saveAsTextFile('county_{}'.format(r))
Run Code Online (Sandbox Code Playgroud)

使用Spark 1.3.1/Python数据框架的正确方法是什么?我希望在一份工作中完成这项工作,而不是N(或N + 1)工作.

也许:

saveAsTextFileByKey()

Dan*_*bos 2

Spark一般不具有多输出的RDD操作。但对于写入文件,有一个很好的技巧:通过 Spark 键写入多个输出 - 一个 Spark 作业