Apache Spark 是一個用于大規模數據處理的開源分布式計算系統
以下是一個使用 PySpark 進行 pivot 數據聚合的示例:
from pyspark.sql import SparkSession
from pyspark.sql.functions import sum, mean, count
# 創建 Spark 會話
spark = SparkSession.builder \
.appName("Pivot Example") \
.getOrCreate()
# 創建一個簡單的 DataFrame 示例
data = [("A", 1), ("A", 2), ("B", 3), ("B", 4), ("C", 5)]
columns = ["Category", "Value"]
df = spark.createDataFrame(data, columns)
# 使用 pivot 進行數據聚合
pivot_df = df.groupBy("Category").pivot("Value").sum()
# 顯示結果
pivot_df.show()
在這個示例中,我們首先創建了一個包含 Category 和 Value 列的簡單 DataFrame。然后,我們使用 groupBy
和 pivot
函數對數據進行聚合。最后,我們使用 show
函數顯示結果。
輸出結果如下:
+------+---+---+---+
|Category| 1| 2| 3|
+------+---+---+---+
| A| 1| 2| 0|
| B| 3| 0| 4|
| C| 0| 0| 5|
+------+---+---+---+
在這個示例中,我們將 Value 列的值作為新的列,并將 Category 列的值作為行索引。然后,我們使用 sum
函數對這些新列進行聚合。你可以根據需要使用其他聚合函數,如 mean
、count
等。