python - Pyspark - 将数据帧写入 2 个不同的 csv 文件

标签 python apache-spark pyspark

我想将单个 DataFrame 保存到 2 个不同的 csv 文件中(拆分 DataFrame) - 一个仅包含标题,另一个包含其余行。

我想将这两个文件保存在同一目录下,因此如果可能的话,Spark 处理所有逻辑将是最好的选择,而不是使用 pandas 拆分 csv 文件。

最有效的方法是什么?

感谢您的帮助!

最佳答案

假设您有一个名为“df”的数据集。

您可以: 选项一:写两次:

df.write.(...).option("header", "false").csv(....)
df.take(1).option("header", "true").csv() // as far as I remember, someone had problems with saving DataFrame without rows -> you must write at least one row and then manually cut this row using normal Java or Python file API

或者您可以使用 header = true 编写一次,然后使用普通 Java API 手动剪切 header 并将其放入新文件中

关于python - Pyspark - 将数据帧写入 2 个不同的 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46199065/

相关文章:

python - 使用 python 中的对数轴缩放和拟合对数正态分布

scala - 为什么SparkContext.textFile的partition参数不生效?

apache-spark - 是否可以嵌入 Zeppelin Notebook 的 HTML 输出,以便在托管 Notebook 的服务器不活动时可以查看输出?

java - 如何在 Mahout Spark 上编写推荐

pyspark 中的随机采样和替换

python - 在 DRF 3 中的 ModelSerializer 上添加非模型字段

python - 如何在 Mac 上修复 "cc: error: unrecognized command line option ' -Wshorten-64-to-3 2'"问题

python - 更新成本函数和 Theta 参数时的简单线性回归误差

python - PySpark 代码是在 JVM 还是 Python 子进程中运行?

pyspark - 将 Python 脚本提交到 Databricks JOB