我正在使用pyspark而我在写入S3时遇到了问题,但从S3读取不是问题。
这是我的代码:
dic = {'a': {'c1(%)': 0.0, 'c2': 0, 'c3($)': 260, 'c4(%)': 4.79, 'c5': 78, 'c6': 352}, 'b': {'c1(%)': 0.0, 'c2': 0, 'c3($)': 5, 'c4(%)': 0.09, 'c5': 2, 'c6': 280}, 'c': {'c1(%)': 0.0, 'c2': 0, 'c3($)': 0, 'c4(%)': 0.0, 'c5': 0, 'c6': 267}}
df = pd.DataFrame(dic)
df.to_csv("s3://work/.../filename_2018-01-04_08:50:45.csv")
这是错误:
IOError: [Errno 2] No such file or directory: 's3://work/.../filename_2018-01-04_08:50:45.csv'
问题是什么?
答案 0 :(得分:2)
请参阅上面的评论,您需要使用Spark DataFrame。实现此目的的一种简单方法是将Pandas DF上的索引转换为列,然后转换为spark DF:
df2=sqlContext.createDataFrame(df.reset_index(drop=False))
然后使用:
df2.write.save("s3://work/.../filename_2018-01-04_08:50:45.csv", format='csv', header=True)