使用AWSDatawrnger层在aws-lambda中进行excel到csv的转换时遇到问题



我有一个函数,可以将excel文件读取到数据帧中,然后使用awswrangler api to_csv函数将该数据帧保存在s3存储桶中。excel文件包含从不同行和列开始的数据。

我的转换代码看起来像这样:

df = wr.s3.read_excel(
path = 's3://bucket/filepath/', 
sheet_name = 'sheetname', 
header = 5, 
index_col = False).iloc[:, 3:]
wr.s3.to_csv(df, path = "s3://bucket/filepath/', 
dataset = True, 
filename_prefix = 'sheetname')

代码工作正常,但我有两个问题:

  1. 即使我指定了index_col = False,csv也会输出一个额外的索引列
  2. 文件csv输出名称附带了额外的序列号,我不想要。我只想要sheetname.csv之类的东西。我查看了文档,没有找到任何关于如何做到这一点的好线索

当前输出看起来有点像sheetname8f1e8wefdf15f4wgfe5fef46we54f.csv

您可以在path参数中指定完整路径。您根本不需要使用filename_prefix。使用filename_prefix是在文件名中获得这些额外字符的原因。

此外,您可以通过设置index = False来禁用输出中的索引。

wr.s3.to_csv(df, path = "s3://bucket/filepath/sheetname.csv", 
index = False)

相关内容

  • 没有找到相关文章

最新更新