小编Yog*_*esh的帖子

遍历PySpark GroupedData

假设原始数据如下:

Competitor  Region  ProductA  ProductB
Comp1       A       £10       £15
Comp1       B       £11       £16
Comp1       C       £11       £15
Comp2       A       £9        £16
Comp2       B       £12       £14
Comp2       C       £14       £17
Comp3       A       £11       £16
Comp3       B       £10       £15
Comp3       C       £12       £15
Run Code Online (Sandbox Code Playgroud)

(参考:Python-根据列值将数据框拆分为多个数据框,并使用这些值命名

我希望获得基于列值的子数据框列表,例如Region,例如:

df_A :

Competitor  Region  ProductA  ProductB
Comp1       A       £10       £15
Comp2       A       £9        £16
Comp3       A       £11       £16
Run Code Online (Sandbox Code Playgroud)

在Python中,我可以这样做:

for region, df_region in df.groupby('Region'):
    print(df_region)
Run Code Online (Sandbox Code Playgroud)

如果df是Pyspark df,我可以做同样的迭代吗?

在Pyspark中,一旦执行df.groupBy(“ Region”),我就会获得GroupedData。我不需要像count,mean等之类的任何聚合。我只需要子数据帧的列表,每个子数据帧都有相同的“ Region”值。可能?

python apache-spark-sql pyspark

6
推荐指数
1
解决办法
1454
查看次数

标签 统计

apache-spark-sql ×1

pyspark ×1

python ×1