

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

# Gunakan fungsi kondisional dalam ekspresi rumus
<a name="expression-conditional-functions"></a>

Dalam [transformasi](transforms.md) dan [metrik](metrics.md), Anda dapat menggunakan fungsi berikut untuk memeriksa kondisi dan mengembalikan hasil yang berbeda, apakah kondisi dievaluasi menjadi benar atau salah.


| Fungsi | Deskripsi | 
| --- | --- | 
| `if(condition, result_if_true, result_if_false)` | Mengevaluasi `condition` dan mengembalikan `result_if_true` jika kondisi dievaluasi menjadi benar atau `result_if_false` jika kondisi dievaluasi. `false`<br />`condition`harus berupa angka. Fungsi ini mempertimbangkan `0` dan string kosong sebagai `false` dan segala sesuatu yang lain (termasuk`NaN`) sebagai`true`. Boolean mengkonversi ke `0` (false) dan `1` (true).<br />Anda dapat mengembalikan [konstanta none](expression-constants.md#none-definition) dari fungsi ini untuk membuang output untuk kondisi tertentu. Ini berarti Anda dapat memfilter titik data yang tidak memenuhi suatu kondisi. Untuk informasi selengkapnya, lihat [Filter titik data](expression-tutorials.md#filter-data).

**Example Contoh**  
+ `if(0, x, y)`mengembalikan variabel`y`.
+ `if(5, x, y)`mengembalikan variabel`x`.
+ `if(gt(temp, 300), x, y)`mengembalikan variabel `x` jika variabel `temp` lebih besar dari`300`.
+ `if(gt(temp, 300), temp, none)`mengembalikan variabel `temp` jika lebih besar dari atau sama dengan`300`, atau `none` (tidak ada nilai) jika `temp` kurang dari`300`.<br />Kami menyarankan Anda menggunakan UFCS untuk fungsi bersyarat bersarang di mana satu atau lebih argumen adalah fungsi bersyarat. Anda dapat menggunakan `if(condition, result_if_true)` untuk mengevaluasi suatu kondisi dan `elif(condition, result_if_true, result_if_false)` untuk mengevaluasi kondisi tambahan.<br />Misalnya, Anda dapat menggunakan `if(condition1, result1_if_true).elif(condition2, result2_if_true, result2_if_false)` sebagai pengganti`if(condition1, result1_if_true, if(condition2, result2_if_true, result2_if_false))`.<br />Anda juga dapat menghubungkan fungsi kondisional menengah tambahan. Misalnya, Anda dapat menggunakan `if(condition1, result1_if_true).elif(condition2, result2_if_true).elif(condition3, result3_if_true, result3_if_false)` alih-alih menyarangkan beberapa `if` pernyataan, seperti`if(condition1, result1_if_true, if(condition2, result2_if_true, if(condition3, result3_if_true result3_if_false)))`. Anda harus menggunakan `elif(condition, result_if_true, result_if_false)` dengan UFCS.  | 