You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spark Scala 2.11.11本地数据集合并及Top100记录展示求助

解决方案

Spark DataFrame 没有 merge 方法(该方法属于 Pandas API),你需要使用 join 操作 来关联两个数据集。以下是具体实现:

核心实现代码

假设你已经完成两个文件的读取,得到 df1 和 df2,可以按以下步骤操作:

// 基于pId列进行内关联(仅保留两边都存在匹配pId的记录)
val joinedResult = df1.join(df2, Seq("pId"), "inner")
                      .select("pId", "firstName", "lastName")

// 展示合并后的前100条记录
joinedResult.show(100)

可选扩展

  • 若需要保留df1中所有记录(即使df2无对应pId),改用左关联:
val leftJoinedResult = df1.join(df2, Seq("pId"), "left")
                          .select("pId", "firstName", "lastName")
leftJoinedResult.show(100)
  • 若数据集存在重复pId,可先去重再关联:
// 对df1的pId去重
val df1UniquePid = df1.select("pId").distinct()
// 关联后筛选目标列
val deduplicatedResult = df1UniquePid.join(df2, Seq("pId"), "inner")
                                      .select("pId", "firstName", "lastName")
deduplicatedResult.show(100)

内容的提问来源于stack exchange,提问作者Kacie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 23:31:04