将示例代码DataFrame.groupBy()
放入我的代码中,但它显示了max()
和sum()
未定义的方法。
df.groupBy("department").agg(max("age"), sum("expense"));
如果我想使用max()
和sum()
方法,我应该导入哪个 Java 包?
此示例代码的语法是否正确?
将示例代码DataFrame.groupBy()
放入我的代码中,但它显示了max()
和sum()
未定义的方法。
df.groupBy("department").agg(max("age"), sum("expense"));
如果我想使用max()
和sum()
方法,我应该导入哪个 Java 包?
此示例代码的语法是否正确?
导入对我不起作用。Eclipse IDE 仍然显示编译错误。
但是以下方法调用有效
df.groupBy("Gender").agg(org.apache.spark.sql.functions.max(df.col("Id")), org.apache.spark.sql.functions.sum(df.col("Income")));
如果聚合只涉及一个字段,我们还可以使用以下语法,
df.groupBy("Gender").max("Income");
import static org.apache.spark.sql.functions.*
试试这个来导入所有功能,包括max
和sum
尝试import org.apache.spark.sql.functions._
编辑。
从我注意到您正在使用 scala 语法,尝试通过 apply 方法访问列。对于 Java,您必须使用.col
以下方法传递列:
df.groupBy("department").agg(max(df.col("age")), sum(df.col("expense")));
在此处查看 Java 示例