如何将 pandas 数据帧写入 Databricks dbfs/FileStore?
问题:如何将 pandas 数据帧写入 Databricks dbfs/FileStore?

我是 Databricks 的新手,在将 pandas 数据帧写入 databricks 本地文件系统时需要帮助。
我确实在 google 中搜索过,但找不到与此类似的任何案例,还尝试了 databricks 提供的帮助指南(附件),但这也不起作用。尝试进行以下更改以找到我的运气,命令运行良好,但文件未写入目录(预期 wrtdftodbfs.txt 文件已创建)
1.df.to_csv("/dbfs/FileStore/NJ/wrtdftodbfs.txt")
结果:抛出以下错误
FileNotFoundError: [Errno 2] 没有这样的文件或目录:'/dbfs/FileStore/NJ/wrtdftodbfs.txt'
2.df.to_csv("\\dbfs\\FileStore\\NJ\\wrtdftodbfs.txt")
结果:没有错误,但也没有写入
3.df.to_csv("dbfs\\FileStore\\NJ\\wrtdftodbfs.txt")
结果:没有错误,但也没有写入
4.df.to_csv(path ="\\dbfs\\FileStore\\NJ\\",file="wrtdftodbfs.txt")
结果:TypeError:to_csv() 得到了一个意外的关键字参数“路径”
5.df.to_csv("dbfs:\\FileStore\\NJ\\wrtdftodbfs.txt")
结果:没有错误,但也没有写入
6.df.to_csv("dbfs:\\dbfs\\FileStore\\NJ\\wrtdftodbfs.txt")
结果:没有错误,但也没有写入
该目录存在并且手动创建的文件会显示出来,但 pandas to_csv 永远不会写入也不会出错。
dbutils.fs.put("/dbfs/FileStore/NJ/tst.txt","Testing file creation and existence")
dbutils.fs.ls("dbfs/FileStore/NJ")
Out[186]:[FileInfo(pathu003d'dbfs:/dbfs/FileStore/NJ/tst.txt', nameu003d'tst.txt', sizeu003d35)]
如果随附的细节不够清楚,请感谢您的时间并原谅我。
解答
在您的笔记本数据块中尝试此操作:
import pandas as pd
from io import StringIO
data = """
CODE,L,PS
5d8A,N,P60490
5d8b,H,P80377
5d8C,O,P60491
"""
df = pd.read_csv(StringIO(data), sep=',')
#print(df)
df.to_csv('/dbfs/FileStore/NJ/file1.txt')
pandas_df = pd.read_csv("/dbfs/FileStore/NJ/file1.txt", header='infer')
print(pandas_df)
更多推荐

所有评论(0)