RenameField 类
在 DynamicFrame
内重命名一个节点。
Methods
__call__(frame, old_name, new_name, transformation_ctx = "", info = "", stageThreshold = 0, totalThreshold = 0)
在 DynamicFrame
内重命名一个节点。
frame
– 在其中重命名节点的DynamicFrame
(必需)。-
old_name
– 要重命名的节点的完整路径 (必需)。如果旧名称中包含点,则 RenameField 将不起作用,除非使用反引号 (
``
) 将其引起来。例如,要将this.old.name
替换为thisNewName
,您需要调用 RenameField,如下所示:newDyF = RenameField(oldDyF, "`this.old.name`", "thisNewName")
new_name
– 新名称,其中包括完整路径 (必需)。transformation_ctx
– 用于标识状态信息的唯一字符串 (可选)。info
– 与转换中的错误关联的字符串 (可选)。stageThreshold
– 在转换出错之前可能在其中发生的最大错误数 (可选;默认值为零)。totalThreshold
– 在处理出错之前可能全面发生的最大错误数 (可选;默认值为零)。
返回 DynamicFrame
,其中的指定字段进行了重命名。
apply(cls, *args, **kwargs)
继承自 GlueTransform
apply。
name(cls)
继承自 GlueTransform
名称。
describeArgs(cls)
继承自 GlueTransform
describeArgs。
describeReturn(cls)
继承自 GlueTransform
describeReturn。
describeTransform(cls)
继承自 GlueTransform
describeTransform。
describeErrors(cls)
继承自 GlueTransform
describeErrors。
describe(cls)
继承自 GlueTransform
描述。
RenameField 示例
此示例简化了由 Relationalize 转换创建的 DynamicFrames 中字段的名称,然后删除添加的 index
和 id
字段。
dyf_renameField_1 = RenameField.apply(dyf_flattened, "`customers.val.address`", "address") dyf_renameField_2 = RenameField.apply( dyf_renameField_1, "`customers.val.id`", "cust_id" ) dyf_dropfields_rf = DropFields.apply( frame = dyf_renameField_2, paths = ["index", "id"] ) dyf_dropfields_rf.toDF().show() +-------------------+-------+ | address|cust_id| +-------------------+-------+ | 66 P Street, NY| 343| | 708 Fed Ln, CA| 932| | 807 Deccan Dr, CA| 102| |108 Park Street, TX| 623| | 763 Marsh Ln, TX| 231| +-------------------+-------+