📌  相关文章
📜  查找 PySpark Dataframe 列的最小值、最大值和平均值(1)

📅  最后修改于: 2023-12-03 15:40:22.515000             🧑  作者: Mango

查找 PySpark Dataframe 列的最小值、最大值和平均值

在 PySpark 中,我们可以使用 agg() 函数和 min()max()mean() 函数来查找 DataFrame 中特定列的最小值、最大值和平均值。

以下是一个示例 DataFrame:

from pyspark.sql.functions import col
from pyspark.sql.types import IntegerType

data = [("Alice", 25, 3000),
        ("Bob", 30, 4500),
        ("Charlie", 35, 5000),
        ("Dave", 40, 6000)]

df = spark.createDataFrame(data, schema=["Name", "Age", "Salary"])

要查找 Salary 列的最小值、最大值和平均值,可以使用以下代码:

from pyspark.sql.functions import min, max, mean

min_salary = df.agg(min(col("Salary"))).collect()[0][0]
max_salary = df.agg(max(col("Salary"))).collect()[0][0]
avg_salary = df.agg(mean(col("Salary"))).collect()[0][0]

print("Minimum Salary:", min_salary)
print("Maximum Salary:", max_salary)
print("Average Salary:", avg_salary)

这将输出以下内容:

Minimum Salary: 3000
Maximum Salary: 6000
Average Salary: 4625.0

请注意,agg() 函数将 DataFrame 转换为已聚合的 DataFrame,因此我们需要使用 collect() 函数来获取聚合值。