📅  最后修改于: 2023-12-03 15:21:53.386000             🧑  作者: Mango
Apache Spark 是用于大规模数据处理的强大工具。对于Python开发人员来说, Pandas 库是进行数据处理的流行工具。在这篇教程中,我们将了解如何使用 Pandas 创建 Spark 数据框。
首先,我们需要安装一些必要的库:
!pip install pyspark pandas pyarrow
在此示例中,我们将使用电影评分数据集。您可以从 movielens 下载该数据集。
import pandas as pd
movies_df = pd.read_csv("movies.csv")
ratings_df = pd.read_csv("ratings.csv")
现在我们将使用通过 Pandas 创建的数据框来创建 Spark 数据框。
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("PandasToSpark").getOrCreate()
movies_sdf = spark.createDataFrame(movies_df)
ratings_sdf = spark.createDataFrame(ratings_df)
在上面的代码中,我们使用 spark.createDataFrame()
函数将 Pandas 数据框转换为 Spark 数据框。
现在我们已经创建了 Spark 数据框,我们可以像操作 Pandas 数据框一样进行操作和查询。
# 显示 Spark 数据框中前10行
movies_sdf.show(10)
# 选择特定的列
movies_sdf.select("title", "genres").show(10)
# 对数据进行聚合
ratings_sdf.groupBy("rating").count().show()
# 进行连接操作
joined_sdf = movies_sdf.join(ratings_sdf, on="movieId")
joined_sdf.show(10)
有时,我们可能需要将 Spark 数据框转换回 Pandas 数据框。 我们可以使用 toPandas()
函数将 Spark 数据框转换为 Pandas 数据框。
joined_pdf = joined_sdf.toPandas()
在本教程中,我们介绍了如何使用 Pandas 创建 Spark 数据框。 我们还学习了如何操作和查询 Spark 数据框,并将其转换回 Pandas 数据框。 Spark 数据框可以帮助您处理大规模数据集,而 Pandas 则提供了一个简单的方式来处理小型数据集。