📅  最后修改于: 2023-12-03 15:14:40.709000             🧑  作者: Mango
在Scala中,使用DataFrames可以方便地处理结构化数据。其中一个常用的方法是df.agg(min),用于计算DataFrames中的最小值。
以下是df.agg(min)方法的语法:
df.agg(min(columnName))
其中,df是DataFrames对象,columnName是需要计算最小值的列名。
假设我们有以下DataFrames,包含姓名和年龄两列:
import org.apache.spark.sql.SparkSession
val spark = SparkSession.builder()
.appName("df.agg(min)")
.master("local[*]")
.getOrCreate()
val data = Seq(("Alice", 25), ("Bob", 30), ("Charlie", 20), ("David", 35))
val df = spark.createDataFrame(data).toDF("name", "age")
df.show()
输出:
+-------+---+
| name|age|
+-------+---+
| Alice| 25|
| Bob| 30|
|Charlie| 20|
| David| 35|
+-------+---+
现在,我们想计算年龄的最小值。我们可以使用df.agg(min)方法:
val minAge = df.agg(min("age")).collect()(0)(0)
println(minAge)
输出:
20
我们还可以将这个值添加到DataFrames中:
val dfWithMinAge = df.agg(min("age")).withColumnRenamed("min(age)", "min_age")
dfWithMinAge.show()
输出:
+-------+
|min_age|
+-------+
| 20|
+-------+
在Scala中,df.agg(min)方法可以方便地计算DataFrames中的最小值。它的语法简单易懂,使用起来非常方便。