如何使用 StringIO(file.read()) 创建 Spark 数据帧

How to use StringIO(file.read()) to create a Spark dataframe

提问人:Eliu 提问时间:11/17/2023 更新时间:11/20/2023 访问量:13

问:

我有一个非常简单的csv文件。通过以下方式将记录加载到 pandas 数据帧中非常容易。 但是,我真正需要的是将其加载到 spark 数据帧中。

如何直接使用 StringIO(f.read()) 将记录直接导入 spark 数据帧,而不是将df_pandas转换为df_spark?

谢谢!

f = open("C:\\myfolder\\test.csv", "r")
df_pandas = pd.read_csv(StringIO(f.read()), sep=";")
#df_spark = spark.read.csv(StringIO(f.read()))  # this doesn't work
f.close()
DataFrame Apache Spark stringIO

评论


答:

0赞 Ali BOUHLEL 11/20/2023 #1

Spark SQL 提供将 CSV 格式的文件或文件目录读入 Spark DataFrame。spark.read().csv("filePath")

您需要将结果保存在文件中并获取其路径。StringIO(f.read())