Spark(或pyspark)列内容随GroupBy一起洗牌

时间:2018-05-20 09:26:16

标签: apache-spark pyspark apache-spark-sql pyspark-sql

我正在使用Spark 2.2.0。

我有一个DataFrame超过20列。在下面的示例中,PERIOD是周数,并键入一种商店类型(HypermarketSupermarket

table.show(10)
+--------------------+-------------------+-----------------+
|              PERIOD|               TYPE| etc......
+--------------------+-------------------+-----------------+  
|                  W1|                 HM| 
|                  W2|                 SM|
|                  W3|                 HM|

etc...

我想做一个简单的groupby(这里有pyspark,但Scala或pyspark-sql给出相同的结果)

total_stores = table.groupby("PERIOD", "TYPE").agg(countDistinct("STORE_DESC"))

total_stores2 = total_stores.withColumnRenamed("count(DISTINCT STORE_DESC)", "NB STORES (TOTAL)")

total_stores2.show(10)
+--------------------+-------------------+-----------------+
|              PERIOD|               TYPE|NB STORES (TOTAL)|
+--------------------+-------------------+-----------------+
|CMA BORGO -SANTA ...|              BORGO|                1|
|        C ATHIS MONS|   ATHIS MONS CEDEX|                1|
|    CMA BOSC LE HARD|       BOSC LE HARD|                1|

问题不在于计算中:列混淆了:PERIODSTORE NAMESTYPECITY等等。

我不知道为什么。其他一切都很好。

0 个答案:

没有答案