我有一个 S3 存储桶。在存储桶内,我们有一个 2018 年的文件夹,以及我们为每个月和每天收集的一些文件。因此,例如,2018\3\24、2018\3\25 等等。
我们没有将日期放在每一天存储桶中的文件中。
基本上,我想遍历存储桶并使用文件夹结构按“日期”对每个文件进行分类,因为我们需要将其加载到不同的数据库中,并且需要一种识别方法。
我已经阅读了大量关于使用 boto3 的帖子,并反复阅读,但是关于是否可以完成我需要的细节似乎存在冲突。
如果有更简单的方法可以做到这一点,请提出建议。
我得到了它关闭导入 boto3
s3client = boto3.client('s3')
bucket = 'bucketname'
startAfter = '2018'
s3objects= s3client.list_objects_v2(Bucket=bucket, StartAfter=startAfter )
for object in s3objects['Contents']:
print(object['Key'])
Run Code Online (Sandbox Code Playgroud) Pyspark 是全新的,我正在重构一些 R 代码,这些代码开始失去正确扩展的能力。我返回一个数据帧,其中包含许多带有数值的列,并且我尝试使用多个复合条件将此结果集过滤为一个新的、更小的结果集。
from pyspark.sql import functions as f
matches = df.filter(f.when('df.business') >=0.9 & (f.when('df.city') == 1.0) & (f.when('street') >= 0.7)) |
(f.when('df.phone') == 1) & (f.when('df.firstname') == 1) & (f.when('df.street') == 1) & (f.when('df.city' == 1)) |
(f.when('df.business') >=0.9) & (f.when('df.street') >=0.9) & (f.when('df.city')) == 1))) |
(f.when('df.phone') == 1) & (f.when('df.street') == 1) & (f.when('df.city')) == 1))) |
(f.when('df.lastname') >=0.9) & (f.when('df.phone') == 1) & (f.when('df.business')) >=0.9 & (f.when('df.city') == 1))) |
(f.when('df.phone') == 1 & (f.when('df.street') …Run Code Online (Sandbox Code Playgroud)