在本文中,将深入了解如何使用Python的PySpark进行数据预处理。PySpark是Apache Spark的Python分布,它帮助数据工程师和数据分析师在云环境或本地机器上执行数据分析、数据工程和机器学习任务。将探讨PySpark在数据清洗过程中的作用,并讨论Apache Spark的一些基本功能。
Apache Spark是一个强大的引擎,它支持在云环境或本地机器上执行数据分析、数据工程和机器学习任务。它可以在单个机器或分布式系统(集群)上运行。以下是选择Apache Spark而不是其他替代品的几个理由:
要开始使用PySpark,首先需要安装PySpark库。以下是使用pip安装PySpark的命令:
!pip install pyspark
安装完成后,可以导入PySpark库并开始工作。
在开始PySpark操作之前,将使用加利福尼亚房价数据集。以下是如何使用pandas读取数据集的示例:
import pandas as pd
data = pd.read_csv('sample_data/california_housing_test.csv')
data.head()
现在已经导入了数据集并查看了它,接下来将开始使用PySpark。但在实际使用PySpark之前,需要启动Spark会话。
以下是启动Spark会话的步骤:
from pyspark.sql import SparkSession
spark_session = SparkSession.builder.appName('PySpark_article').getOrCreate()
通过使用builder函数,首先调用appName类来命名会话(这里给会话命名为"PySpark_article"),最后通过调用getOrCreate()函数来创建会话,并将其存储在名为spark_session的变量中。
以下是如何使用Spark会话读取CSV格式的数据:
df_spark = spark_session.read.csv('sample_data/california_housing_train.csv')
在上述代码中,可以看到Spark使用Spark会话变量调用read.csv()函数来读取数据。这与在pandas中读取CSV文件时调用read_csv()函数类似。
以下是如何使用PySpark的show()函数来查看数据:
df_spark.show()
与pandas的head()函数相比,show()函数返回前20条记录,而head()函数默认返回前5条记录。此外,show()函数显示的表格数据格式也与head()函数不同。
以下是如何查看PySpark和Pandas数据框架的数据类型:
type(df_spark_col)
type(data)