我想在Ec2 instacne中创建S3存储桶中的文件夹.我尝试了put对象,但它不起作用.有没有办法使用cli从ec2 instace在s3上创建文件夹.
我想将数据帧保存到s3,但是当我将文件保存到s3时,它将创建带有的空文件${folder_name},我想在其中保存文件。
保存数据框的语法:-
f.write.parquet("s3n://bucket-name/shri/test")
Run Code Online (Sandbox Code Playgroud)
它将文件保存在测试文件夹中,但$test在下创建shri。
有没有一种方法可以保存它而不创建该额外的文件夹?
我正在处理一个大文件,其中一个字段为 mmddyy 格式,数据类型为字符串,我需要将其转换为 YYYY-MM-DD。我确实尝试过创建 UDF 并转换引用其中一篇文章,但它抛出错误。示例代码:
数据框中的实际字段:
+-----------+
|DATE_OPENED|
+-----------+
| 072111|
| 090606|
Run Code Online (Sandbox Code Playgroud)
预期输出:
+---------------+
| DATE_OPENED|
+---------------+
| 2011-07-21|
| 2006-06-09|
Run Code Online (Sandbox Code Playgroud)
示例代码:
func = udf (lambda x: datetime.strptime(x, '%m%d%Y'), DateType())
newdf = olddf.withColumn('open_dt' ,date_format(func(col('DATE_OPENED')) , 'YYYY-MM-DD'))
Run Code Online (Sandbox Code Playgroud)
错误:
Error : ValueError: time data '072111' does not match format '%m%d%Y'
Run Code Online (Sandbox Code Playgroud)