pyspark 數(shù)據(jù)分析 pyspark數(shù)據(jù)可視化
Extra超值購(gòu)賣家服務(wù)2025-07-154290
PySpark是一個(gè)用于大規(guī)模數(shù)據(jù)處理的Python庫(kù),它提供了一種簡(jiǎn)單、高效的方式來(lái)處理和分析數(shù)據(jù)。要使用PySpark進(jìn)行數(shù)據(jù)分析,首先需要安裝PySpark,然后導(dǎo)入所需的庫(kù)并創(chuàng)建一個(gè)SparkSession對(duì)象。
以下是一個(gè)簡(jiǎn)單的PySpark數(shù)據(jù)分析示例:
- 安裝PySpark:
pip install pyspark
- 導(dǎo)入所需庫(kù):
from pyspark.sql import SparkSession
from pyspark.sql.functions import col, when, lit
from pyspark.sql.window import Window
- 創(chuàng)建SparkSession對(duì)象:
spark = SparkSession.builder \n .appName("PySpark 數(shù)據(jù)分析") \n .getOrCreate()
- 讀取數(shù)據(jù):
data = [("張三", 18), ("李四", 20), ("王五", 19)]
columns = ["姓名", "年齡"]
df = spark.createDataFrame(data, columns)
- 計(jì)算年齡總和:
age_sum = df.select(col("年齡")).agg({"年齡": "sum"}).collect()[0][0]
print("年齡總和:", age_sum)
- 計(jì)算年齡平均值:
age_avg = df.select(col("年齡")).agg({"年齡": "avg"}).collect()[0][0]
print("年齡平均值:", age_avg)
- 計(jì)算年齡最大值:
max_age = df.select(col("年齡")).agg({"年齡": "max"}).collect()[0][0]
print("年齡最大值:", max_age)
- 計(jì)算年齡最小值:
min_age = df.select(col("年齡")).agg({"年齡": "min"}).collect()[0][0]
print("年齡最小值:", min_age)
- 計(jì)算年齡范圍:
range_ages = df.select(col("年齡"), lit("-").alias("開始年齡"), lit("+").alias("結(jié)束年齡")) \n .filter((col("年齡") >= lit(min_age)) & (col("年齡") <= lit(max_age))) \n .select("年齡", "開始年齡", "結(jié)束年齡") \n .distinct() \n .show()
- 顯示結(jié)果:
spark.stop()
這個(gè)示例展示了如何使用PySpark進(jìn)行簡(jiǎn)單的數(shù)據(jù)分析,包括計(jì)算年齡總和、平均值、最大值、最小值以及年齡范圍。你可以根據(jù)實(shí)際需求修改代碼以實(shí)現(xiàn)更復(fù)雜的數(shù)據(jù)分析任務(wù)。
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。
轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。