微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用pyspark进行枢轴功能而无聚合

如何解决使用pyspark进行枢轴功能而无聚合

下面有一个示例输入和输出

Step_Name  Parameter_name  Step  Value  Substep  
 Test 1        Param 1       1     #       1
 Test 1        Param 2       1     #       1
 Test 1        Param 3       1     #       1
 Test 1        Param 1       1     #       2
 Test 1        Param 2       1     #       2
 Test 1        Param 3       1     #       2
 Test 2        Param 1       2     #       1
 Test 2        Param 2       2     #       1
 Test 2        Param 3       2     #       1
 Test 2        Param 1       2     #       2
 Test 2        Param 2       2     #       2
 Test 2        Param 3       2     #       2

我想要的期望输出是...

Step Step_name  SubStep  Param 1  Param 2  Param 3
  1   Test 1       1        #        #        #
  1   Test 1       2        #        #        #
  2   Test 2       1        #        #        #
  2   Test 2       2        #        #        #

我现在可以使用以下命令在熊猫中做到这一点:

df.pivot_table(index = ["Step","Step_name","SubStep","Filename"],columns = 'Parameter_name',values = 'Value').reset_index()

当我尝试在PySpark中执行此操作时,我会使用以下内容

df.groupBy("Step","Filename").pivot("Parameter_name")

但是,这将返回一个对象,并且我需要使用诸如sum之类的聚合函数。如何避免这样做?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。