首页 文章

从pyspark数据帧中检索分区/批处理

提问于
浏览
1

我需要从一个大的pyspark数据帧中收集分区/批处理,以便我可以迭代地将它们提供给神经网络

我的想法是1)分区数据,2)迭代收集每个分区,3)用 toPandas() 转换收集的分区

我对 foreachPartitionmapPartitions 等方法有点困惑,因为我无法迭代它们 . 任何的想法?

1 回答

  • 3

    您可以使用 mapPartitions 将每个分区映射到元素列表中,并使用 toLocalIterator 以迭代方式获取它们:

    for partition in rdd.mapPartitions(lambda part: [list(part)]).toLocalIterator():
        print(len(partition)) # or do something else :-)
    

相关问题