由于“ java.util.List [etc ...不带参数错误”,因此无法在Scala中建立索引列表

时间:2020-08-31 12:53:58

标签: scala apache-spark

我有一个使用此语法收集的列表。

  val cutoff = df.withColumn("rank", dense_rank() over bydf).filter("rank=5").select("amount").collectAsList()

[[10.5]]

当我尝试索引列表边界以提取值10.5时,出现此错误:

Error:(38, 17) java.util.List[org.apache.spark.sql.Row] does not take parameters

如何解决此问题并从此嵌套列表中提取10.5

1 个答案:

答案 0 :(得分:0)

由于您是在数据框上进行收集,因此您将获得“行列表”。最简单的方法是在收集之前将其转换为数据集。即(假设金额为Double):

val cutoff = df.withColumn("rank", dense_rank() over bydf).filter("rank=5").select("amount").as[Double].collectAsList()
相关问题