Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spark数据帧API(1.4.1)中未定义的max()和sum()方法_Java_Apache Spark Sql_Spark Dataframe - Fatal编程技术网

Java Spark数据帧API(1.4.1)中未定义的max()和sum()方法

Java Spark数据帧API(1.4.1)中未定义的max()和sum()方法,java,apache-spark-sql,spark-dataframe,Java,Apache Spark Sql,Spark Dataframe,将DataFrame.groupBy()的示例代码放入我的代码中,但它显示了max()和sum()未定义的方法 df.groupBy("department").agg(max("age"), sum("expense")); 如果要使用max()和sum()方法,应该导入哪个Java包 此示例代码的语法正确吗?请尝试导入org.apache.spark.sql.functions。 编辑。 据我所知,您正在使用scala语法,试图通过apply方法访问列。对于Java,必须使用.col方法传

DataFrame.groupBy()
的示例代码放入我的代码中,但它显示了
max()
sum()
未定义的方法

df.groupBy("department").agg(max("age"), sum("expense"));
如果要使用
max()
sum()
方法,应该导入哪个Java包


此示例代码的语法正确吗?

请尝试导入org.apache.spark.sql.functions。

编辑。

据我所知,您正在使用scala语法,试图通过apply方法访问列。对于Java,必须使用
.col
方法传递以下列:

df.groupBy("department").agg(max(df.col("age")), sum(df.col("expense")));

参见Java示例

您似乎正在搜索“org.apache.spark.sql.GroupedData”

要像编写代码一样在代码中使用它们,需要静态导入


始终尝试先查看API说明。

导入对我不起作用。EclipseIDE仍然显示编译错误

但是下面的方法调用有效

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");

请尝试导入所有函数,包括
max
sum

谢谢,但是Java(1.7)不支持“u”,API中也没有“org.apache.spark.sql.functions.*”。答案已修复。请立即尝试将EclipseIDE的“import static org.apache.spark.sql.functions.*”;改为import static org.apache.spark.sql.functions.*;让它起作用
import static org.apache.spark.sql.functions.*