Apache spark 如何将Pyspark数据帧转换为CSV而不将其发送到文件?

Apache spark 如何将Pyspark数据帧转换为CSV而不将其发送到文件?,apache-spark,pyspark,Apache Spark,Pyspark,我有一个数据帧,我需要将其转换为CSV文件,然后我需要将此CSV发送到API。在将其发送到API时,我不想将其保存到本地文件系统,需要将其保存在内存中。如何实现此目的?简单方法:使用toPandas()将数据帧转换为Pandas数据帧,然后保存为字符串。要保存为字符串,而不是文件,您必须使用path\u或

我有一个数据帧,我需要将其转换为CSV文件,然后我需要将此CSV发送到API。在将其发送到API时,我不想将其保存到本地文件系统,需要将其保存在内存中。如何实现此目的?

简单方法:使用
toPandas()
将数据帧转换为Pandas数据帧,然后保存为字符串。要保存为字符串,而不是文件,您必须使用
path\u或
调用
To\u csv
。然后在API调用中发送字符串

从文件:

参数

路径\或\ bufstr或文件句柄,默认为无

文件路径或对象,如果未提供,则结果将作为字符串返回

因此,您的代码可能如下所示:

csv_string = df.toPandas().to_csv(path_or_bufstr=None)

备选方案:使用大缓冲区创建内存中的文件。或者,您甚至可以使用,只需使缓冲区足够大,而不刷新或关闭文件。看看为什么这样做。

简单方法:使用
toPandas()
将数据帧转换为Pandas数据帧,然后保存为字符串。要保存为字符串,而不是文件,您必须使用
path\u或
调用
To\u csv
。然后在API调用中发送字符串

从文件:

参数

路径\或\ bufstr或文件句柄,默认为无

文件路径或对象,如果未提供,则结果将作为字符串返回

因此,您的代码可能如下所示:

csv_string = df.toPandas().to_csv(path_or_bufstr=None)

备选方案:使用大缓冲区创建内存中的文件。或者,您甚至可以使用,只需使缓冲区足够大,而不刷新或关闭文件。看看为什么这样做。

看起来参数名实际上是
path\u或
。在进行该更改后,效果非常好。看起来参数名称实际上是
path\u或\u buf
。在做出改变后,它就像一个符咒