ResolveChoice クラス
DynamicFrame
内で Choice 型を解決します。
例
DynamicFrame.resolveChoice() メソッドを使用して、DynamicFrame
の複数の型を含むフィールドを処理することをお勧めします。コード例については、「例: resolveChoice を使用して、複数の型を含む列を処理する」を参照してください。
方法
__call__(frame, specs = None, choice = "", transformation_ctx = "", info = "", stageThreshold = 0, totalThreshold = 0)
DynamicFrame
内のあいまいな型を解決するための情報を提供します。作成された DynamicFrame
を返します。
-
frame
– Choice 型を解決するDynamicFrame
(必須)。 -
specs
– 解決する特定のあいまいさのリスト、それぞれがタプルの形式:(path, action)
。path
値は特定のあいまいな要素を識別し、action
値は対応する解決を識別します。spec
パラメータおよびchoice
パラメータのうち 1 つのみを使用できます。spec
パラメータがNone
ではない場合、choice
パラメータは空の文字列である必要があります。逆に、choice
が空の文字列ではない場合、spec
パラメータはNone
である必要があります。どちらのパラメータも指定されていない場合、AWS Glue はスキーマを解析し、それを使用してあいまいさを解決します。specs
タプルのaction
部分で、次の解決策のうちの 1 つを指定できます。-
cast
– キャスト先の型を指定できます (例:cast:int
)。 -
make_cols
– データをフラット化することで潜在的なあいまいさを解消します。たとえば、columnA
がint
またはstring
の場合、解決策は、DynamicFrame
にcolumnA_int
およびcolumnA_string
という名前の 2 つの列を生成することです。 -
make_struct
– 構造体を使用してデータを表現することで、潜在的なあいまいさを解決します。たとえば、列のデータがint
またはstring
の場合、make_struct
アクションを使用すると、作成されたDynamicFrame
にint
およびstring
の両方を含む構造体の列が生成されます。 -
project
– 生成されたDynamicFrame
で指定された型の値のみを保持して、潜在的なあいまいさを解決します。例えば、ChoiceType
列のデータがint
またはstring
となる可能性がある場合、project:string
アクションを指定すると、生成されたDynamicFrame
からstring
型以外の値が削除されます。
path
で配列を識別する場合は、あいまいさを避けるために配列名の後に空の角括弧を置きます。例えば、使用しているデータが次のように構造化されているとします。"myList": [ { "price": 100.00 }, { "price": "$100.00" } ]
path
を"myList[].price"
に設定し、action
を"cast:double"
に設定すると、文字列バージョンではなく、数値バージョンの料金を選択できます。 -
-
choice
–specs
パラメータがNone
の場合のデフォルトの解決アクション。specs
パラメータがNone
ではない場合、空の文字列以外に設定することはできません。この引数では、上記の
specs
アクションに加えて、次のアクションもサポートされています。-
MATCH_CATALOG
– 各ChoiceType
について、指定した Data Catalog テーブル内の対応する型へのキャストを試みます。
-
-
database
–MATCH_CATALOG
選択肢で使用する AWS Glue Data Catalog データベース (MATCH_CATALOG
に必要)。 -
table_name
–MATCH_CATALOG
アクションで使用する AWS Glue Data Catalog のテーブル名 (MATCH_CATALOG
に必要)。 -
transformation_ctx
- 状態情報を識別するために使用される一意の文字列 (オプション)。 -
info
- 変換のエラーに関連付けられた文字列 (オプション)。 -
stageThreshold
– エラーを出力する前に、変換で発生する可能性のあるエラーの最大数 (オプション)。デフォルト値は 0 です。 -
totalThreshold
– エラーの出力を処理する前に、全体で発生する可能性のあるエラーの最大数 (オプション)。デフォルト値は 0 です。
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
説明。