首页 > 解决方案 > 保持从 rdd 的位置 5 到 15

问题描述

可以说我有这个数据框:

myDataFrame.map(r =>
  (
    ( r.getAs[String]("col1"),
      r.getAs[String]("col2"),
      r.getAs[String]("col3"),
      r.getAs[String]("col4")
    ),
    r.getAs[Int]("col5")))
  .groupByKey()
  .map(r => (r._1, r._2.sum))
  .sortBy(r => r._2)
  .map(r => {
    Chart(r._1._1, r._1._2, r._1._3, r._1._4)
  })
  .toDF("col1", "col2", "col3", "col4")

这将返回 1000 个我想保留的数据帧,并且只返回从索引 10 到 100 的数据帧。可能吗 ?

谢谢

标签: apache-sparkfilter

解决方案


如果行是唯一的,则带有“except”的“limit”可以工作(不保证):

val df = List(1, 2, 3, 4, 5).toDF("sortable")
df.limit(4).except(df.limit(2))

推荐阅读