

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# ResolveChoice kelas
<a name="aws-glue-api-crawler-pyspark-transforms-ResolveChoice"></a>

Mengubah jenis pilihan dalam sebuah `DynamicFrame`.

## Contoh
<a name="pyspark-ResolveChoice-example"></a>

Kami menyarankan Anda menggunakan [`DynamicFrame.resolveChoice()`](aws-glue-api-crawler-pyspark-extensions-dynamic-frame.md#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-resolveChoice)metode ini untuk menangani bidang yang berisi beberapa tipe dalam file`DynamicFrame`. Untuk melihat contoh kode, lihat[Contoh: Gunakan ResolveChoice untuk menangani kolom yang berisi beberapa jenis](aws-glue-api-crawler-pyspark-extensions-dynamic-frame.md#pyspark-resolveChoice-example).

## Metode
<a name="aws-glue-api-crawler-pyspark-transforms-ResolveChoice-_methods"></a>
+ [\$1\$1call\$1\$1](#aws-glue-api-crawler-pyspark-transforms-ResolveChoice-__call__)
+ [apply](#aws-glue-api-crawler-pyspark-transforms-ResolveChoice-apply)
+ [name](#aws-glue-api-crawler-pyspark-transforms-ResolveChoice-name)
+ [describeArgs](#aws-glue-api-crawler-pyspark-transforms-ResolveChoice-describeArgs)
+ [describeReturn](#aws-glue-api-crawler-pyspark-transforms-ResolveChoice-describeReturn)
+ [describeTransform](#aws-glue-api-crawler-pyspark-transforms-ResolveChoice-describeTransform)
+ [describeErrors](#aws-glue-api-crawler-pyspark-transforms-ResolveChoice-describeErrors)
+ [describe](#aws-glue-api-crawler-pyspark-transforms-ResolveChoice-describe)

## \$1\$1call\$1\$1 (bingkai, spesifikasi = tidak ada, pilihan = “”, transformation\$1ctx = “”, info = “”, stageThreshold = 0, totalThreshold = 0)
<a name="aws-glue-api-crawler-pyspark-transforms-ResolveChoice-__call__"></a>

Menyediakan informasi untuk mengubah jenis yang ambigu dalam `DynamicFrame`. Ini mengembalikan hasil`DynamicFrame`.
+ `frame` — `DynamicFrame` di mana jenis pilihan akan diubah (wajib).
+ `specs` — Daftar ambiguitas spesifik yang akan diubah, masing-masing dalam bentuk tupel:`(path, action)`. Nilai `path` mengidentifikasi elemen ambigu tertentu, dan nilai `action` mengidentifikasi resolusi yang sesuai. 

  Anda hanya dapat menggunakan salah satu `choice` parameter `spec` dan. Jika parameter `spec` bukan `None`, maka parameter `choice` harus string kosong. Sebaliknya, jika `choice` bukan string kosong, maka `spec` parameternya harus`None`. Jika tidak ada parameter yang disediakan, AWS Glue mencoba mengurai skema dan menggunakannya untuk menyelesaikan ambiguitas. 

  Anda dapat menentukan salah satu strategi resolusi berikut di `action` bagian `specs` Tuple:
  + `cast`— Memungkinkan Anda menentukan jenis yang akan dilemparkan (misalnya,`cast:int`).
  + `make_cols`— Menyelesaikan ambiguitas potensial dengan meratakan data. Misalnya, jika `columnA` bisa berupa `int` atau `string`, maka resolusi akan menghasilkan dua kolom bernama `columnA_int` dan `columnA_string` dalam `DynamicFrame` yang dihasilkan.
  + `make_struct`— Menyelesaikan ambiguitas potensial dengan menggunakan struct untuk mewakili data. Sebagai contoh, jika data dalam kolom bisa menjadi `int` atau `string`, menggunakan tindakan `make_struct` menghasilkan sebuah kolom struktur dalam `DynamicFrame` yang dihasilkan yang masing-masing berisi sebuah `int` dan sebuah `string`.
  + `project`— Menyelesaikan ambiguitas potensial dengan hanya mempertahankan nilai dari tipe tertentu dalam hasil. `DynamicFrame` Misalnya, jika data dalam `ChoiceType` kolom bisa berupa `int` atau a`string`, menentukan `project:string` tindakan akan menurunkan nilai dari hasil `DynamicFrame` yang bukan tipe`string`. 

  Jika `path` mengidentifikasi sebuah array, menempatkan kurung persegi kosong setelah nama array untuk menghindari ambiguitas. Misalnya, anggap Anda bekerja dengan data yang terstruktur sebagai berikut:

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

  Anda dapat memilih numerik daripada versi string harga dengan menyetel `path` ke`"myList[].price"`, dan menyetel `action` ke`"cast:double"`.
+ `choice` — Tindakan resolusi default jika parameter `specs` adalah `None`. Jika parameter `specs` bukan `None`, maka ini tidak harus diatur ke apa pun kecuali string kosong.

  Selain `specs` tindakan yang dijelaskan sebelumnya, argumen ini juga mendukung tindakan berikut:
  + `MATCH_CATALOG` — Upaya untuk mengubah setiap `ChoiceType` menjadi jenis yang sesuai dalam tabel Katalog Data yang ditentukan.
+ `database`— Database AWS Glue Data Catalog untuk digunakan dengan `MATCH_CATALOG` pilihan (diperlukan untuk`MATCH_CATALOG`).
+ `table_name`— Nama tabel AWS Glue Data Catalog untuk digunakan dengan `MATCH_CATALOG` tindakan (diperlukan untuk`MATCH_CATALOG`).
+ `transformation_ctx` — Sebuah string unik yang digunakan untuk mengidentifikasi informasi status (opsional).
+ `info` — Sebuah string yang akan dikaitkan dengan kesalahan dalam transformasi (opsional).
+ `stageThreshold`— Jumlah maksimum kesalahan yang dapat terjadi dalam transformasi sebelum kesalahan keluar (opsional). Default-nya adalah nol.
+ `totalThreshold`— Jumlah maksimum kesalahan yang dapat terjadi secara keseluruhan sebelum memproses kesalahan keluar (opsional). Default-nya adalah nol.

## apply(cls, \$1args, \$1\$1kwargs)
<a name="aws-glue-api-crawler-pyspark-transforms-ResolveChoice-apply"></a>

Warisan dari `GlueTransform` [apply](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-apply).

## name(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-ResolveChoice-name"></a>

Warisan dari `GlueTransform` [name](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-name).

## describeArgs(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-ResolveChoice-describeArgs"></a>

Warisan dari `GlueTransform` [describeArgs](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-describeArgs).

## describeReturn(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-ResolveChoice-describeReturn"></a>

Warisan dari `GlueTransform` [describeReturn](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-describeReturn).

## describeTransform(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-ResolveChoice-describeTransform"></a>

Warisan dari `GlueTransform` [describeTransform](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-describeTransform).

## describeErrors(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-ResolveChoice-describeErrors"></a>

Warisan dari `GlueTransform` [describeErrors](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-describeErrors).

## describe(cls)
<a name="aws-glue-api-crawler-pyspark-transforms-ResolveChoice-describe"></a>

Warisan dari `GlueTransform` [describe](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md#aws-glue-api-crawler-pyspark-transforms-GlueTransform-describe).