“Jika Anda bersungguh-sungguh, Anda bisa melakukan apa saja.” “Jika angkanya sama dengan 8, saya menang!” Pernyataan bersyarat adalah bagian dari kehidupan sehari-hari. Kita kerap menggunakannya untuk menentukan tindakan berdasarkan evaluasi logis:
- Apakah saya bersungguh-sungguh (BENAR/SALAH)? Jika ya, saya bisa melakukan apa saja.
- Apakah angkanya = 8? Jika ya, saya menang.
Di Tableau, Anda dapat menerapkan logika bersyarat untuk meniru logika yang Anda gunakan setiap hari. Tableau menyediakan serangkaian fungsi logika yang memudahkan transformasi data secara kondisional berdasarkan evaluasi logis, baik ekspresi boolean (TRUE/FALSE) maupun kecocokan nilai persis. Dalam artikel ini, kami akan menelusuri beberapa pernyataan bersyarat yang paling umum di Tableau dan menunjukkan cara menggunakannya untuk menganalisis dan memvisualisasikan data.
Pernyataan IF di Tableau
Pernyataan IF adalah pernyataan bersyarat dasar di Tableau yang memungkinkan pengguna mengevaluasi ekspresi boolean dan mengembalikan suatu nilai jika kondisinya benar, dan nilai lain jika salah. Sintaks dasar pernyataan IF adalah:
IF [condition] THEN [value1] ELSE [value2] END
Jika hasil akhir bergantung pada evaluasi ekspresi boolean alternatif, Anda dapat menambahkan klausa ELSEIF ke dalam pernyataan seperti ini:
IF [condition1] THEN [value1]
ELSEIF [condition2] THEN [value2]
ELSE [value3]
END
Misalnya, untuk mengidentifikasi genre musik pop vs. non-pop berdasarkan apakah ‘pop’ terdapat dalam namanya, kita dapat menggunakan pernyataan IF berikut:
IF CONTAINS([Top Genre], 'pop') THEN 'pop'
ELSE 'other genre'
END
Pernyataan IF Bertingkat
Pernyataan IF juga dapat ditumpuk (nested) untuk membuat kondisi yang lebih kompleks dan mengevaluasi beberapa kondisi untuk subkelompok data Anda. Untuk membangun pernyataan IF bertingkat, gunakan sintaks berikut:
IF [condition1] THEN
IF [condition2] THEN [value1]
ELSE [value2]
END
ELSE [value3]
END
Misalkan kita ingin mengetahui proporsi lagu pop yang bisa untuk berdansa (sesuai metrik danceability yang didefinisikan dalam Spotify Music Dataset). Kita dapat menggunakan pernyataan IF bertingkat berikut untuk mengetahuinya:
IF CONTAINS([Top Genre], 'pop') THEN
IF [Dnce] > 66 THEN 'danceable pop' // 66 is the median
ELSE 'less danceable pop'
END
ELSE 'not pop'
END

Pernyataan IF bertingkat adalah fungsi yang kuat, terutama ketika beberapa kondisi harus dipenuhi untuk subkelompok data yang berbeda.
Pernyataan IIF
Fungsi IIF adalah pernyataan bersyarat lain di Tableau yang memungkinkan pengguna menguji suatu kondisi dan mengembalikan salah satu dari dua nilai. Sintaks fungsi IIF adalah:
IIF([condition], [value if true], [value if false])
Misalnya, untuk membuat field terhitung yang mengidentifikasi penulis lagu yang memproduksi lagu hit teratas antara 2017 dan 2019, kita dapat menggunakan fungsi IIF berikut:
IIF([Year] >= 2017 AND [Year] <= 2019, '2017-2019 Top Song', 'Not Top Song in 2017-2019')

Ini akan mengembalikan “2017-2019 Top Song” jika lagunya menjadi hit teratas antara 2017 dan 2019 (menurut Billboard) dan “Not Top Song in 2017-2019” jika tidak.
Menggunakan Fungsi Agregasi Tableau dengan IF
Tableau menawarkan beragam fungsi bawaan yang dapat digunakan bersama pernyataan bersyarat untuk melakukan perhitungan yang lebih lanjut. Beberapa fungsi agregasi yang paling umum digunakan meliputi COUNTD, SUM, AVG, MIN, dan MAX. Dengan fungsi agregat, Anda dapat meringkas wawasan secara efektif dengan membangun metrik baru di Tableau. Anda perlu menggunakan sintaks berikut:
<Aggregation>(IF [Condition] THEN [value] END)
Contohnya, mari hitung jumlah artis unik dengan hit teratas antara 2017 dan 2019 dengan fungsi COUNTD:
COUNTD(IF [Year] >= 2017 and [Year] <= 2019 THEN [Artist] END)

Pernyataan di atas akan mengembalikan jumlah artis berbeda yang memiliki hit antara 2017 dan 2019. Jika seorang artis memiliki beberapa hit pada tahun-tahun tersebut, nama artis hanya dihitung sekali.
Demikian pula, kita dapat menggunakan fungsi SUM dan AVG dalam kombinasi dengan pernyataan bersyarat untuk melakukan perhitungan pada subset data tertentu.
Sedikit saran: pastikan untuk membungkus kondisi di dalam agregasi. Jika tidak, Anda akan mendapatkan pesan terkenal “Cannot mix aggregate and non aggregate comparisons or results in 'IF' expressions.” Misalnya, pernyataan di bawah ini menghasilkan error karena kita mencoba melakukan agregasi pada satu titik data yang sendiri tidak diagregasi.

Pernyataan CASE di Tableau
Pendahuluan
Pernyataan CASE adalah pernyataan bersyarat lain di Tableau yang memungkinkan pengguna melakukan beberapa pengujian pada satu field dan mengembalikan nilai berbeda berdasarkan hasilnya. Tidak seperti pernyataan IF yang bergantung pada evaluasi ekspresi boolean, pernyataan CASE bergantung pada kecocokan nilai persis. Jika klausa WHEN menggunakan logika boolean, Anda akan mendapatkan error berikut di Tableau:

Sintaks pernyataan CASE adalah:
CASE [expression]
WHEN [value1] THEN [result1]
WHEN [value2] THEN [result2]
ELSE [default result]
END
Misalnya, mari tulis ulang logika untuk mengidentifikasi penulis lagu yang memproduksi lagu hit teratas antara 2017 dan 2019:
CASE [Year]
WHEN IN (2017, 2018, 2019) THEN '2017-2019 Top Songs'
ELSE 'Not Top Song in 2017-2019'
END

Pada kasus di atas, kita menggunakan konstruksi WHEN IN untuk mencantumkan tahun-tahun yang diminati (2017, 2018, dan 2019). Tableau kemudian menggunakan himpunan tersebut untuk menemukan kecocokan persis di data. Jika tidak ditemukan data yang cocok, dan tidak ada nilai default yang ditentukan, maka nilai null akan dikembalikan.
Pernyataan CASE Bertingkat
Serupa dengan pernyataan IF bertingkat, Anda dapat menggunakan pernyataan CASE bertingkat di Tableau untuk menampilkan logika kompleks menggunakan field terhitung. Anda dapat menggunakan sintaks di bawah ini untuk mengembalikan logika bertingkat dengan pernyataan CASE:
CASE [expression1]
WHEN [value1] THEN
(CASE [expression2]
WHEN [value2] THEN [result1]
WHEN [value3] THEN [result2]
…
ELSE [default result]
END)
WHEN [value4] THEN
(CASE [expression2]
WHEN [value5] THEN [result3]
WHEN [value6] THEN [result4]
…
ELSE [default result]
END)
ELSE [default result]
END
Walaupun pernyataan CASE tidak dapat mengevaluasi ekspresi boolean dan tidak bekerja untuk mengidentifikasi pola kompleks dalam data, pernyataan ini lebih mudah dibaca dan memiliki kinerja lebih baik dibandingkan IF. Jika data cukup sederhana untuk ditransformasi dan tidak memerlukan evaluasi BENAR/SALAH yang kompleks, sebaiknya gunakan pernyataan CASE. Dalam beberapa kasus, Anda dapat menggunakan pernyataan IF dan CASE bersama-sama untuk analisis yang lebih kuat.
Kesimpulan
Pernyataan bersyarat, seperti IF dan CASE, adalah instrumen efektif untuk meningkatkan keterampilan Tableau Anda sebagai praktisi data. Untuk beralih dari "zero-to-hero" dengan Tableau, pastikan untuk memeriksa sumber daya kami, seperti jalur karier Data Analyst in Tableau atau kursus Analyzing Data in Tableau.
Setelah Anda memiliki dasar yang kuat, latih visualisasi di Tableau menggunakan dataset yang tersedia di DataLab. Pernyataan IF, IIF, dan CASE WHEN akan menjadi hal yang alami bagi Anda. Semoga berhasil!
FAQ Tableau CASE dan IF
Bagaimana saya tahu kapan harus menggunakan IF vs CASE?
Fungsi yang Anda gunakan sangat bergantung pada jenis tugas yang ingin Anda lakukan. Sementara IF mengevaluasi ekspresi boolean, CASE secara ketat mencocokkan nilai pada sebuah field. Sering kali, CASE dapat diubah menjadi IF . Sebaliknya kurang mungkin, karena IF digunakan untuk melakukan evaluasi yang lebih kompleks yang biasanya tidak dapat ditangani oleh CASE.
Apa perbedaan antara IF dan CASE?
Sementara IF dapat mengevaluasi logika boolean pada dimensi yang tidak diagregasi atau metrik yang diagregasi, CASE hanya mengevaluasi kecocokan nilai persis. Karena itu, IF lebih fleksibel dibandingkan CASE dan dapat digunakan untuk melakukan logika yang lebih kompleks pada data. Namun, CASE menawarkan keterbacaan yang lebih baik dan kinerja yang lebih cepat daripada IF. CASE sangat cocok ketika data hanya memerlukan transformasi sederhana.
Haruskah saya memformat fungsi bersyarat?
Meski Tableau belum menyediakan fitur untuk memformat teks secara otomatis di dialog calculated field, menambahkan pemformatan demi keterbacaan adalah ide yang baik, termasuk:
- Komentar: Anda dapat menggunakan // untuk komentar satu baris dan /* <...> */ untuk komentar multi-baris;
- Pemutusan baris dan indentasi: tambahkan jeda baris dan indentasi agar orang lain yang melihat workbook mudah memahami berbagai lapisan logika yang tertanam dalam visualisasi.
Apa perbedaan antara IF dan IIF?
Perbedaan utama antara pernyataan IF dan fungsi IIF adalah yang pertama dapat menguji beberapa kondisi dan mengembalikan nilai berbeda berdasarkan hasilnya, sedangkan yang kedua hanya dapat menguji satu kondisi pada satu waktu dan mengembalikan salah satu dari dua nilai. Walaupun Anda dapat memanfaatkan logika yang lebih kompleks dengan IF, fungsi IIF sangat baik untuk kondisi sederhana di mana kejelasan dan ke ringkasan menjadi prioritas.
Mengapa tidak menggunakan saja fitur parameter dan filter bawaan Tableau?
Dalam beberapa kasus, fitur filter dan parameter tidak akan cukup untuk menganalisis data. Seperti dijelaskan dalam tutorial Calculating Fields in Tableau kami, terkadang Anda perlu membuat variabel baru untuk melengkapi data yang hilang sebelum dapat menganalisisnya. Sering kali, transformasi yang perlu Anda lakukan akan masuk ke dalam lima kategori berikut:
- Segmentasi data Anda
- Mengonversi tipe data suatu field, seperti mengonversi string menjadi tanggal atau integer menjadi float
- Mengagregasi data
- Memfilter hasil
- Menghitung rasio

