ResolveChoice 类 - Amazon连接词
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

ResolveChoice 类

解析 DynamicFrame 内的选择类型。

Methods

__call__(frame, specs = None, choice = "", transformation_ctx = "", info = "", stageThreshold = 0, totalThreshold = 0)

提供有关解析 DynamicFrame 内歧义类型的信息。返回生成的 DynamicFrame

  • frame – 在其中解析选择类型的 DynamicFrame (必需)。

  • specs— 要解析的特定歧义列表,每个歧义均采用元组形式::(path, action)path 值标识特定歧义元素,action 值标识相应解析。只能使用 specchoice 参数之一。如果 spec 参数不为 None,则 choice 参数必须为空字符串。反过来,如果 choice 不为空字符串,则 spec 参数必须为 None。如果没有提供任何参数,AmazonGlue 尝试解析架构并用它来解析歧义。

    specs 元组的 action 部分可以指定四个解析策略之一:

    • cast:   允许指定一种要强制转换到的类型 (例如,cast:int)。

    • make_cols:通过展平数据来解析潜在的歧义。例如,如果 columnAintstring,则解析就是在结果 DynamicFrame 中生成名为 columnA_intcolumnA_string 的两个列。

    • make_struct:通过用一种结构表示数据来解析潜在的歧义。例如,如果某个列中的数据是 intstring,则使用 make_struct 操作会在结果 DynamicFrame 中生成结构列,而每个结构都同时包含 intstring

    • project:通过仅在结果 DynamicFrame 中保留指定类型的值来解析潜在的歧义。例如,如果ChoiceType列可以是intstring,指定project:string操作从生成的DynamicFrame它们不是类型string

    如果 path 识别到数组,则在数组名称后放置一个空的方括号可避免歧义。例如,假设您正在使用结构如下的数据:

    "myList": [ { "price": 100.00 }, { "price": "$100.00" } ]

    可以通过将 path 设置为 "myList[].price"、将 action 设置为 "cast:double" 来选择价格的数字而非字符串版本。

  • choice— 如果specs参数为None。如果 specs 参数不为 None,则只能将此项设置为空字符串,不能设置为其他值。

  • transformation_ctx – 用于标识状态信息的唯一字符串 (可选)。

  • info – 与转换中的错误关联的字符串 (可选)。

  • stageThreshold – 在转换出错之前可能在其中发生的最大错误数 (可选;默认值为零)。

  • totalThreshold – 在处理出错之前可能全面发生的最大错误数 (可选;默认值为零)。

返回包含已解析选择的 DynamicFrame

df1 = ResolveChoice.apply(df, choice = "make_cols") df2 = ResolveChoice.apply(df, specs = [("a.b", "make_struct"), ("c.d", "cast:double")])

apply(cls, *args, **kwargs)

继承自 GlueTransform apply

name(cls)

继承自 GlueTransform name

describeArgs(cls)

继承自 GlueTransform describeArgs

describeReturn(cls)

继承自 GlueTransform describeReturn

describeTransform(cls)

继承自 GlueTransform describeTransform

describeErrors(cls)

继承自 GlueTransform describeErrors

describe(cls)

继承自 GlueTransform 描述