📌  相关文章
📜  如何将 Pandas 转换为 PySpark DataFrame?(1)

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

如何将 Pandas 转换为 PySpark DataFrame?

当我们需要在大规模数据集上进行处理时,PySpark 是一个非常好的选择,它可以分布式地处理数据。但是在某些情况下,我们需要将本地数据集转换为 PySpark 数据集,这时就可以使用 Pandas 来处理本地数据集,然后将其转换为 PySpark 数据集。下面是将 Pandas 转换为 PySpark DataFrame 的方法:

1. 创建 Pandas DataFrame

首先,我们需要创建一个 Pandas DataFrame,可以使用 Pandas 的 read_csv 方法从 csv 文件中读取数据集:

import pandas as pd

df_pandas = pd.read_csv('data.csv')
2. 创建 PySpark DataFrame

接下来,我们需要使用 PySpark 的 SparkSession 创建 PySpark DataFrame。SparkSession 是与 Spark 交互的主入口点,可以通过它创建 PySpark DataFrame。我们可以使用 Python 的 findspark 包来将 Spark 引入 Python:

import findspark
findspark.init()

from pyspark.sql import SparkSession

spark = SparkSession.builder.appName("Pandas to PySpark").getOrCreate()
3. 将 Pandas DataFrame 转换为 PySpark DataFrame

我们可以利用 PySpark 的 createDataFrame 方法将 Pandas DataFrame 转换为 PySpark DataFrame:

df_spark = spark.createDataFrame(df_pandas)

这样我们就成功地将 Pandas DataFrame 转换为 PySpark DataFrame 了。

整体代码示例
import findspark
import pandas as pd

findspark.init()

from pyspark.sql import SparkSession

df_pandas = pd.read_csv('data.csv')

spark = SparkSession.builder.appName("Pandas to PySpark").getOrCreate()

df_spark = spark.createDataFrame(df_pandas)

这个示例代码会将 data.csv 转换为 PySpark DataFrame。