

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

# Menambahkan bidang terhitung
<a name="adding-a-calculated-field-analysis"></a>

Buat bidang terhitung untuk mengubah data Anda dengan menggunakan satu atau beberapa hal berikut: 
+ [Operator](arithmetic-and-comparison-operators.md)
+ [Fungsi](functions.md)
+ Fungsi agregat (Anda hanya dapat menambahkan ini ke analisis)
+ Bidang yang berisi data
+ Bidang terhitung lainnya

Anda dapat menambahkan bidang terhitung ke kumpulan data selama persiapan data atau dari halaman analisis. Saat Anda menambahkan bidang terhitung ke kumpulan data selama persiapan data, bidang tersebut tersedia untuk semua analisis yang menggunakan kumpulan data tersebut. Saat Anda menambahkan bidang terhitung ke kumpulan data dalam analisis, itu hanya tersedia dalam analisis tersebut. 

Analisis mendukung operasi baris tunggal dan operasi agregat. Operasi baris tunggal adalah operasi yang menyediakan (berpotensi) hasil yang berbeda untuk setiap baris. Operasi agregat menyediakan hasil yang selalu sama untuk seluruh rangkaian baris. Misalnya, jika Anda menggunakan fungsi string sederhana tanpa kondisi, itu mengubah setiap baris. Jika Anda menggunakan fungsi agregat, itu berlaku untuk semua baris dalam grup. Jika Anda meminta jumlah total penjualan untuk AS, jumlah yang sama berlaku untuk seluruh rangkaian. Jika Anda meminta data tentang keadaan tertentu, jumlah total penjualan berubah untuk mencerminkan pengelompokan baru Anda. Ini masih memberikan satu hasil untuk seluruh set.

Dengan membuat bidang terhitung agregat dalam analisis, Anda kemudian dapat menelusuri data. Nilai bidang agregat tersebut dihitung ulang dengan tepat untuk setiap level. Jenis agregasi ini tidak dimungkinkan selama persiapan dataset.

Misalnya, katakanlah Anda ingin mengetahui persentase keuntungan untuk setiap negara, wilayah, dan negara bagian. Anda dapat menambahkan bidang terhitung ke analisis Anda,`(sum(salesAmount - cost)) / sum(salesAmount)`. Bidang ini kemudian dihitung untuk setiap negara, wilayah, dan negara bagian, pada saat analis Anda menelusuri geografi.

**Topics**
+ [Menambahkan bidang terhitung ke analisis](#using-the-calculated-field-editor-analysis)
+ [Menambahkan bidang terhitung ke kumpulan data](#using-the-calculated-field-editor)
+ [Menangani nilai desimal di bidang terhitung](#handling-decimal-fields)

## Menambahkan bidang terhitung ke analisis
<a name="using-the-calculated-field-editor-analysis"></a>

Saat Anda menambahkan kumpulan data ke analisis, setiap bidang terhitung yang ada dalam kumpulan data ditambahkan ke analisis. Anda dapat menambahkan bidang terhitung tambahan di tingkat analisis untuk membuat bidang terhitung yang hanya tersedia dalam analisis tersebut.

**Untuk menambahkan bidang terhitung ke analisis**

1. Buka [konsol Cepat](https://quicksight.aws.amazon.com/).

1. Buka analisis yang ingin Anda ubah.

1. Di panel **Data**, pilih **Tambah** di kiri atas, lalu pilih **\$1 BIDANG TERHITUNG**.

   1. Di editor perhitungan yang terbuka, lakukan hal berikut:

   1. Masukkan nama untuk bidang terhitung.

   1. Masukkan rumus menggunakan bidang dari kumpulan data, fungsi, dan operator Anda.

1. Setelah selesai, silakan pilih **Simpan**.

Untuk informasi selengkapnya tentang cara membuat rumus menggunakan fungsi yang tersedia di Quick Sight, lihat[Fungsi bidang yang dihitung dan referensi operator untuk Amazon QuickFungsi dan operator](calculated-field-reference.md).

## Menambahkan bidang terhitung ke kumpulan data
<a name="using-the-calculated-field-editor"></a>

Penulis Amazon Quick Sight dapat melakukan genreasi bidang terhitung selama fase persiapan data pembuatan kumpulan data. Saat Anda membuat bidang terhitung untuk kumpulan data, bidang tersebut menjadi kolom baru dalam kumpulan data. Semua analisis yang menggunakan kumpulan data mewarisi bidang terhitung kumpulan data.

Jika bidang terhitung beroperasi pada tingkat baris dan kumpulan data disimpanSPICE, Quick Sight menghitung dan mewujudkan hasilnya. SPICE Jika bidang yang dihitung bergantung pada fungsi agregasi, Quick Sight mempertahankan rumus dan melakukan perhitungan saat analisis dihasilkan. Jenis bidang terhitung ini disebut bidang terhitung yang tidak terwujud.

**Untuk menambah atau mengedit bidang terhitung untuk kumpulan data**

1. Buka kumpulan data yang ingin Anda gunakan. Untuk informasi selengkapnya, lihat [Mengedit kumpulan data](edit-a-data-set.md).

1. Pada halaman persiapan data, lakukan salah satu hal berikut:
   + Untuk membuat bidang baru, pilih **Tambahkan bidang terhitung** di sebelah kiri.
   + Untuk mengedit bidang terhitung yang ada, pilih dari **Bidang terhitung** di sebelah kiri, lalu pilih **Edit** dari menu konteks (klik kanan).

1. Di editor perhitungan, masukkan nama deskriptif untuk **Tambahkan judul** untuk memberi nama bidang terhitung baru. Nama ini muncul di daftar bidang di kumpulan data, sehingga akan terlihat mirip dengan bidang lainnya. Untuk contoh ini, kami memberi nama bidang`Total Sales This Year`.

1. (Opsional) Tambahkan komentar, misalnya untuk menjelaskan apa yang dilakukan ekspresi, dengan melampirkan teks dalam garis miring dan tanda bintang.

   ```
   /* Calculates sales per year for this year*/
   ```

1. Identifikasi metrik, fungsi, dan item lain yang akan digunakan. Untuk contoh ini, kita perlu mengidentifikasi yang berikut:
   + Metrik yang digunakan
   + Fungsi: `ifelse` dan `datediff`

   Kami ingin membuat pernyataan seperti “Jika penjualan terjadi selama tahun ini, tunjukkan total penjualan, dan sebaliknya tunjukkan 0.”

   Untuk menambahkan `ifelse` fungsi, buka daftar **Fungsi**. Pilih **Semua** untuk menutup daftar semua fungsi. Sekarang Anda akan melihat grup fungsi: **Agregat**, **Bersyarat**, **Tanggal**, dan sebagainya. 

   Pilih **Bersyarat**, lalu klik dua kali `ifelse` untuk menambahkannya ke ruang kerja. 

   ```
   ifelse()
   ```

1. Tempatkan kursor Anda di dalam tanda kurung di ruang kerja, dan tambahkan tiga baris kosong.

   ```
   ifelse(
                                               
                                               
                                               
   )
   ```

1. Dengan kursor Anda pada baris kosong pertama, temukan `dateDiff` fungsinya. Ini terdaftar untuk **Fungsi** di bawah **Tanggal**. Anda juga dapat menemukannya dengan memasukkan **fungsi **date** Pencarian**. `dateDiff`Fungsi mengembalikan semua fungsi yang memiliki *`date`* sebagai bagian dari nama mereka. Itu tidak mengembalikan semua fungsi yang tercantum di bawah **Tanggal**; misalnya, `now` fungsi hilang dari hasil pencarian.

   Klik dua kali `dateDiff` untuk menambahkannya ke baris kosong pertama `ifelse` pernyataan. 

   ```
   ifelse(
   dateDiff()                                            
                                               
                                               
   )
   ```

   Tambahkan parameter yang `dateDiff` menggunakan. Tempatkan kursor Anda di dalam `dateDiff` tanda kurung untuk mulai menambahkan`date1`,, dan: `date2` `period`

   1. Untuk`date1`: Parameter pertama adalah bidang yang memiliki tanggal di dalamnya. Temukan di bawah **Fields**, dan tambahkan ke ruang kerja dengan mengklik dua kali atau memasukkan namanya. 

   1. Untuk`date2`, tambahkan koma, lalu pilih `truncDate()` **Functions**. Di dalam tanda kurungnya, tambahkan periode dan tanggal, seperti ini: **truncDate( "YYYY", now() )**

   1. Untuk`period`: Tambahkan koma setelahnya `date2` dan masukkan**YYYY**. Ini adalah periode untuk tahun ini. Untuk melihat daftar semua periode yang didukung, temukan `dateDiff` di daftar **Fungsi**, dan buka dokumentasi dengan memilih **Pelajari lebih lanjut**. Jika Anda sudah melihat dokumentasi, seperti sekarang, lihat[dateDiff](dateDiff-function.md).

   Tambahkan beberapa spasi untuk keterbacaan, jika Anda suka. Ekspresi Anda akan terlihat seperti berikut ini.

   ```
   ifelse(
      dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" )                                       
                                               
                                               
   )
   ```

1. Tentukan nilai pengembalian. Untuk contoh kita, parameter pertama yang `ifelse` perlu mengembalikan nilai `TRUE` atau`FALSE`. Karena kami menginginkan tahun berjalan, dan kami membandingkannya dengan tahun ini, kami menentukan bahwa `dateDiff` pernyataan itu harus kembali`0`. `if`Bagian dari `ifelse` evaluasi berlaku untuk baris di mana tidak ada perbedaan antara tahun penjualan dan tahun berjalan.

   ```
      dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0 
   ```

   Untuk membuat bidang `TotalSales` untuk tahun lalu, Anda dapat mengubah `0` ke`1`.

   Cara lain untuk melakukan hal yang sama adalah dengan menggunakan `addDateTime` alih-alih`truncDate`. Kemudian untuk setiap tahun sebelumnya, Anda mengubah parameter pertama `addDateTime` untuk mewakili setiap tahun. Untuk ini, Anda gunakan `-1` untuk tahun lalu, `-2` untuk tahun sebelumnya, dan seterusnya. Jika Anda menggunakan`addDateTime`, Anda meninggalkan `dateDiff` fungsi `= 0` untuk setiap tahun.

   ```
      dateDiff( {Discharge Date}, addDateTime(-1, "YYYY", now() ) ,"YYYY" ) = 0 /* Last year */
   ```

1. Pindahkan kursor Anda ke baris kosong pertama, tepat di bawah`dateDiff`. Tambahkan koma. 

   Untuk `then` bagian `ifelse` pernyataan, kita perlu memilih ukuran (metrik) yang berisi jumlah penjualan,`TotalSales`.

   Untuk memilih bidang, buka daftar **Bidang** dan klik dua kali bidang untuk menambahkannya ke layar. Atau Anda bisa memasukkan nama. Tambahkan kurung kurawal `{ }` di sekitar nama yang berisi spasi. Kemungkinan metrik Anda memiliki nama yang berbeda. Anda dapat mengetahui bidang mana yang merupakan metrik dengan tanda angka di depannya (**\$1**).

   Ekspresi Anda akan terlihat seperti berikut sekarang.

   ```
   ifelse(
      dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0
      ,{TotalSales}                            
                                              
   )
   ```

1. Tambahkan `else` klausa. `ifelse`Fungsi ini tidak memerlukan satu, tetapi kami ingin menambahkannya. Untuk tujuan pelaporan, Anda biasanya tidak ingin memiliki nilai null, karena terkadang baris dengan nol dihilangkan. 

   Kami mengatur bagian lain dari ifelse ke. `0` Hasilnya adalah bidang ini `0` untuk baris yang berisi penjualan dari tahun-tahun sebelumnya.

   Untuk melakukan ini, pada baris kosong tambahkan koma dan kemudian a`0`. Jika Anda menambahkan komentar di awal, `ifelse` ekspresi selesai Anda akan terlihat seperti berikut.

   ```
   /* Calculates sales per year for this year*/
   ifelse(
      dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0
      ,{TotalSales}                            
      ,0                                         
   )
   ```

1. Simpan pekerjaan Anda dengan memilih **Simpan** di kanan atas. 

   Jika ada kesalahan dalam ekspresi Anda, editor menampilkan pesan kesalahan di bagian bawah. Periksa ekspresi Anda untuk garis berlekuk-lekuk merah, lalu arahkan kursor Anda ke baris itu untuk melihat apa pesan kesalahannya. Kesalahan umum termasuk tanda baca yang hilang, parameter yang hilang, salah eja, dan tipe data yang tidak valid.

   Untuk menghindari perubahan apa pun, pilih **Batal**.

**Untuk menambahkan nilai parameter ke bidang terhitung**

1. Anda dapat mereferensikan parameter di bidang terhitung. Dengan menambahkan parameter ke ekspresi Anda, Anda menambahkan nilai saat ini dari parameter tersebut.

1. Untuk menambahkan parameter, buka daftar **Parameter**, dan pilih parameter yang nilainya ingin Anda sertakan. 

1. (Opsional) Untuk menambahkan parameter ke ekspresi secara manual, ketikkan nama parameter. Kemudian terlampir dalam kawat gigi keriting`{}`, dan awalan dengan, misalnya. `$` `${parameterName}`

Anda dapat mengubah tipe data bidang apa pun dalam kumpulan data Anda, termasuk jenis bidang terhitung. Anda hanya dapat memilih tipe data yang cocok dengan data yang ada di bidang.

**Untuk mengubah tipe data dari bidang terhitung**
+ Untuk **bidang Terhitung** (di sebelah kiri), pilih bidang yang ingin Anda ubah, lalu pilih **Ubah tipe data** dari menu konteks (klik kanan).

Tidak seperti bidang lain dalam kumpulan data, bidang terhitung tidak dapat dinonaktifkan. Sebagai gantinya, hapus mereka. 

**Untuk menghapus bidang terhitung**
+ Untuk **bidang Terhitung** (di sebelah kiri), pilih bidang yang ingin Anda ubah, lalu pilih **Hapus** dari menu konteks (klik kanan).

## Menangani nilai desimal di bidang terhitung
<a name="handling-decimal-fields"></a>

Saat kumpulan data Anda menggunakan mode Kueri Langsung, perhitungan tipe data desimal ditentukan oleh perilaku mesin sumber tempat dataset berasal. Dalam beberapa kasus tertentu, Quick Sight menerapkan penanganan khusus untuk menentukan tipe data perhitungan output.

Saat kumpulan data Anda menggunakan mode SPICE kueri dan bidang terhitung terwujud, tipe data hasil bergantung pada operator fungsi tertentu dan tipe data input. Tabel di bawah ini menunjukkan bahavior yang diharapkan untuk beberapa bidang dihitung numerik.

**Operator unary**

Tabel berikut menunjukkan tipe data mana yang dihasilkan berdasarkan operator yang Anda gunakan dan tipe data dari nilai yang Anda masukkan. Misalnya, jika Anda memasukkan bilangan bulat ke `abs` perhitungan, tipe data nilai keluaran adalah bilangan bulat.


****  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/quick/latest/userguide/adding-a-calculated-field-analysis.html)

**Operator biner**

Tabel berikut menunjukkan tipe data mana yang dihasilkan berdasarkan tipe data dari dua nilai yang Anda masukan. Misalnya, untuk operator aritmatika, jika Anda memberikan dua tipe data integer, hasil dari keluaran perhitungan sebagai bilangan bulat.

Untuk operator dasar (\$1, -, \$1):


|  | **Bilangan bulat** | **Desimal-tetap** | **Desimal mengapung** | 
| --- | --- | --- | --- | 
|  **Bilangan bulat**  |  Bilangan Bulat  |  Desimal-tetap  |  Desimal mengapung  | 
|  **Desimal-tetap**  |  Desimal-tetap  |  Desimal-tetap  |  Desimal mengapung  | 
|  **Desimal mengapung**  |  Desimal mengapung  |  Desimal mengapung  |  Desimal mengapung  | 

Untuk operator divisi (/):


|  | **Bilangan bulat** | **Desimal-tetap** | **Desimal mengapung** | 
| --- | --- | --- | --- | 
|  **Bilangan bulat**  |  Desimal mengapung  |  Desimal mengapung  |  Desimal mengapung  | 
|  **Desimal-tetap**  |  Desimal mengapung  |  Desimal-tetap  |  Desimal mengapung  | 
|  **Desimal mengapung**  |  Desimal mengapung  |  Desimal mengapung  |  Desimal mengapung  | 

Untuk operator eksponensial dan mod (^,%):


|  | **Bilangan bulat** | **Desimal-tetap** | **Desimal mengapung** | 
| --- | --- | --- | --- | 
|  **Bilangan bulat**  |  Desimal mengapung  |  Desimal mengapung  |  Desimal mengapung  | 
|  **Desimal-tetap**  |  Desimal mengapung  |  Desimal mengapung  |  Desimal mengapung  | 
|  **Desimal mengapung**  |  Desimal mengapung  |  Desimal mengapung  |  Desimal mengapung  | 