按照id分组并根据优先级创建列(Pyspark)
创始人
2024-08-24 06:00:41
0次

可以使用groupby和pivot方法来解决此问题。首先,我们需要使用groupby方法按照id列分组。然后,我们可以使用pivot方法并指定“priority”列来创建新列。最后,我们需要使用fillna方法来使用默认值填充缺失的单元格。

以下是用于解决此问题的示例代码:

from pyspark.sql.functions import *
from pyspark.sql import SparkSession

# 创建Spark会话
spark = SparkSession.builder.appName("groupby_pivot_demo").getOrCreate()
spark.conf.set("spark.sql.shuffle.partitions", "5")

# 创建示例数据
data = [("id1", "A", 1),
       ("id1", "B", 2),
       ("id1", "C", 3),
       ("id2", "A", 2),
       ("id2", "B", 1),
       ("id3", "A", 3)]

df = spark.createDataFrame(data, ["id", "priority", "value"])

# 按照id分组并创建新列
df_grouped = df.groupBy("id").pivot("priority").agg(first(col("value")))

# 填充缺失单元格
df_grouped = df_grouped.fillna(0)

df_grouped.show()

输出结果:

+---+---+---+---+
| id|  A|  B|  C|
+---+---+---+---+
|id2|  2|  1|  0|
|id1|  1|  2|  3|
|id3|  3|  0|  0|
+---+---+---+---+

相关内容

热门资讯

今日焦点辅助!wpk辅助工具,... 今日焦点辅助!wpk辅助工具,WPK真的有透视吗助手(起初是真的有辅助)AI 是一款可以让一直输的玩...
实测交流开挂!微扑克数据分析,... 『标题:当前标题』主打赛后复盘的 AI 游戏攻略黑科技走红,对局总结能力开挂。上传对局回放或者战绩截...
一分钟了解开挂!wepoker... 一款 AI 游戏攻略黑科技工具上线,查攻略效率直接开挂。它整合版本更新、装备搭配、BOSS 打法、牌...
玩家必看分享透视挂!德普之星私... 德普之星私人局辅助器AI 游戏攻略黑科技上线本地缓存功能,离线查阅能力开挂。提前下载对应游戏攻略数据...
重大通报!辅助!wepoker... 您好,重大通报!辅助!wepoker有辅助吗,德普之星怎么开挂安装(确实有辅助)这款游戏可以开挂的,...
揭秘攻略辅助!WPK模拟器,德... 一款 AI 游戏攻略黑科技工具上线,查攻略效率直接开挂。它整合版本更新、装备搭配、BOSS 打法、牌...
推荐一款辅助器!wepoker... 您好,推荐一款辅助器!wepoker代打辅助,wepoker开挂脚本教程(一向有辅助器)这款游戏可以...
必看攻略!辅助!wepoker... 『标题:当前标题』主打赛后复盘的 AI 游戏攻略黑科技走红,对局总结能力开挂。上传对局回放或者战绩截...
记者爆料辅助器!wpk有作弊吗... 本地部署 AI 黑科技工具迎来新版本,不用上传文件到云端就能完成wpk有作弊吗解析、 AI 处理、w...
今日科普辅助器!wepoker... 『标题:当前标题』主打赛后复盘的 AI 游戏攻略黑科技走红,对局总结能力开挂。上传对局回放或者战绩截...