我有一个变量,它有aws s3 url
s3://bucket_name/folder1/folder2/file1.json
Run Code Online (Sandbox Code Playgroud)
我想在变量中获取bucket_name并在另一个变量中使用/folder1/folder2/file1.json.我尝试了正则表达式,可以得到如下所示的bucket_name,不确定是否有更好的方法.
m = re.search('(?<=s3:\/\/)[^\/]+', 's3://bucket_name/folder1/folder2/file1.json')
print(m.group(0))
Run Code Online (Sandbox Code Playgroud)
我怎么得到其余的ie - folder1/folder2/file1.json?
我检查了是否有boto3功能从URL中提取bucket_name和key,但找不到它.
我是一个Apache星火学习者和所遇到的一个RDD动作aggregate,我有没有它的功能如何线索.有人可以逐步详细解释并详细解释我们如何在此处得到以下代码的结果
RDD input = {1,2,3,3}
RDD Aggregate function :
rdd.aggregate((0, 0))
((x, y) =>
(x._1 + y, x._2 + 1),
(x, y) =>
(x._1 + y._1, x._2 + y._2))
output : {9,4}
Run Code Online (Sandbox Code Playgroud)
谢谢
我有一个数据框如下
cust_id req req_met
------- --- -------
1 r1 1
1 r2 0
1 r2 1
2 r1 1
3 r1 1
3 r2 1
4 r1 0
5 r1 1
5 r2 0
5 r1 1
Run Code Online (Sandbox Code Playgroud)
我必须看顾客,看看他们有多少要求,看看他们是否至少见过一次.可以存在具有相同客户和要求的多个记录,一个具有满足且未满足的记录.在上面的例子中我的输出应该是
cust_id
-------
1
2
3
Run Code Online (Sandbox Code Playgroud)
我所做的是
# say initial dataframe is df
df1 = df\
.groupby('cust_id')\
.countdistinct('req')\
.alias('num_of_req')\
.sum('req_met')\
.alias('sum_req_met')
df2 = df1.filter(df1.num_of_req == df1.sum_req_met)
Run Code Online (Sandbox Code Playgroud)
但在少数情况下,它没有得到正确的结果
如何才能做到这一点 ?
我有一个数据帧,我想把它写成具有特定名称的单个json文件.我在下面试过
df2 = df1.select(df1.col1,df1.col2)
df2.write.format('json').save('/path/file_name.json') # didnt work, writing in folder 'file_name.json' and files with part-XXX
df2.toJSON().saveAsTextFile('/path/file_name.json') # didnt work, writing in folder 'file_name.json' and files with part-XXX
Run Code Online (Sandbox Code Playgroud)
感谢是否有人可以提供解决方案.
我需要合并两个集合.我知道可以合并两个表,但不确定集合.合并馆藏的最佳方式是什么?下面说的是示例代码
------------
CREATE OR REPLACE TYPE obj_test AS OBJECT(
id number(9),
val number (9)
)
/
CREATE OR REPLACE TYPE obj_test_list AS TABLE OF obj_test
/
Run Code Online (Sandbox Code Playgroud)
我有两个列表/集合
list1 obj_test_list ;
list2 obj_test_list ;
list3 obj_test_list ;
list1
id val
1 100
2 200
3 300
list2
id val
1 300
4 500
Run Code Online (Sandbox Code Playgroud)
我想基于id匹配list1和list2并添加val else insert.我想在list3中如下所示.
list3
id val
1 400
2 200
3 300
4 500
Run Code Online (Sandbox Code Playgroud)
有人可以为此提供示例代码吗?
我有一个大查询表,其中有一列嵌入了换行符。我想使用函数删除它。它必须是使用函数完成的,我不能使用像allowQuotedNewlines等属性。我在下面尝试过,但它不起作用。在此感谢您的帮助。
select replace(column,'\\n','') from table
Run Code Online (Sandbox Code Playgroud)