我想将一个DataFrame保存到2个不同的csv文件中(拆分DataFrame) - 一个只包含标题,另一个包含其余的行。
我想将2个文件保存在同一目录下,因此如果可能,Spark处理所有逻辑将是最佳选择,而不是使用pandas拆分csv文件。
最有效的方法是什么?
感谢您的帮助!
答案 0 :(得分:2)
让我们假设你已经有数据集被称为" 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将其放在新文件中
答案 1 :(得分:0)
数据,没有标题:
df.to_csv("filename.csv", header=False)
标题,没有数据:
df_new = pd.DataFrame(data=None, columns=df_old.columns) # data=None makes sure no rows are copied to the new dataframe
df_new.to_csv("filename.csv")