pyspark 写csv 示例
时间: 2024-02-15 10:33:16 浏览: 80
以下是使用 PySpark 写 CSV 文件的示例代码:
```python
from pyspark.sql import SparkSession
# 创建 SparkSession 对象
spark = SparkSession.builder.appName("WriteCSV").getOrCreate()
# 构造数据集
data = [("John", "Doe", 28), ("Jane", "Doe", 25), ("Bob", "Smith", 30)]
# 创建 DataFrame 对象
df = spark.createDataFrame(data, ["first_name", "last_name", "age"])
# 将 DataFrame 写入 CSV 文件
df.write.format("csv").option("header", True).mode("overwrite").save("/path/to/csv/file")
```
代码说明:
1. 创建 `SparkSession` 对象。
2. 构造数据集,这里使用一个包含三个元组的列表。
3. 使用 `createDataFrame()` 方法将数据集转换为 DataFrame 对象,并指定列名。
4. 使用 `write()` 方法将 DataFrame 写入 CSV 文件,其中 `format()` 方法指定文件格式为 CSV,`option()` 方法指定写入 CSV 文件时是否包含表头,`mode()` 方法指定写入模式(`overwrite` 表示覆盖已有文件)。
5. `save()` 方法指定文件保存路径。
注意事项:
1. 要先创建 `SparkSession` 对象。
2. `createDataFrame()` 方法需要传入一个列表或 RDD,其中每个元素都是一个元组,元组中包含的值对应 DataFrame 的列。
3. `write()` 方法需要指定文件格式和保存路径,可以使用 `option()` 方法设置写入选项,如是否包含表头等。
4. `mode()` 方法指定写入模式,默认为 `error`,表示如果文件已存在,则抛出异常;也可以指定为 `overwrite`、`append` 或 `ignore`。
5. `save()` 方法指定文件保存路径。
阅读全文