我在S3中有一个存储库:
my_bucket:
folder1
subfolder11
subfolder111
folder2
subfolder21
subfolder221
我正在尝试连接并加载存储桶中所有相关文件夹中的所有文件。这是我尝试执行的操作:
library(aws.s3)
bl <- bucketlist()
### Builds a dataframe of the files in a bucket###
dfBucket <- get_bucket_df(bucket = "my_bucket", prefix = "folder1/", max = Inf)
我遇到以下错误:
z [[“ Owner”]] [[“ ID”]]中的错误:下标超出范围
请告知。
更新: 我实际上可以在其他存储桶上运行此命令,而问题集中在存储在S3的特定存储桶中的文件名太长。
请根据新信息建议解决方法。
答案 0 :(得分:1)
使用rbindlist(dfBucket)
解决。
在我的情况下,get_bucket()
可以正常工作并返回了存储桶内容列表。
get_bucket_df()
返回了一个错误:
z [[“ Owner”]] [[“ ID”]]中的错误:下标超出范围
我试图找出可以解决我问题的方法,并使用rbindlist
解决了我的问题。
那些评论和批评我回答的人,我完全不同意。如果您知道如何解决,请分享您的答案。不提供解决方案就抛出批评家是不专业的!
答案 1 :(得分:0)
我基于“ get_bucket”而不是“ get_bucket_df”使用的解决方案:
start()
“ get_bucket_df”的工作不稳定,有时会给我“ z [[“ Owner”]] [[“ ID”]]中的错误:下标超出范围”。
因此,此解决方案解决了该问题。