aws-glue - 动态帧上的 AWS Glue 多列重命名
问题描述
文档没有指定是否允许这样做,但是我似乎无法让它工作,而且一遍又一遍地链接多个 DF 也不是很干净。
例如
df1= RenameField.apply(frame = df, old_name = "col1",new_name = "COL1")
df2= RenameField.apply(frame = df1, old_name = "col2", new_name = "COL2")
我尝试了一些变体,并基于其他 Glue 转换,我认为以下方法会起作用..
df1 = RenameField.apply[(frame = df, old_name = "col1",new_name = "COL1"),
(frame = df, old_name = "col2", new_name = "COL2")]
解决方案
您可以使用applyMapping
DynamicFrame 中的方法重命名列和/或转换为另一种数据类型(Scala):
val mappedDynamicFrame = sourceDynamicFrame.applyMapping(
mappings = Seq(
("col1", "string", "column_1", "string"),
("col2", "string", "column_2", "string"),
("col3", "long", "column_3", "timestamp")
),
caseSensitive = false,
transformationContext = s"mapped-source"
)
推荐阅读
- javascript - 当 CKEditor mangles 时,如何在其中包含带有 HTML 的工具提示
- python - Python Click:如何打印有关使用错误的完整帮助详细信息?
- javascript - 我的函数中的逻辑错误阻止 count++ 工作
- json - Powershell Json 对象操作
- macos - 缩放不适用于 Mac 上 matplotlib 中的 3d 图
- git - 修复在推送提交中被视为已删除而不是重命名的文件
- swagger - ServiceStack Swagger 正文
- java - Hibernate - Tomcat - SQL Server - 连接关闭问题
- python - 在字典中分离键值并在处理值后重新创建字典
- javascript - 如何从 React.js 中的引导工具提示复制文本