Tableau'da Hesaplanmış Alan Oluşturma ve Formül Yazma
Beceri rehberi

Tableau'da Hesaplanmış Alan Oluşturma ve Formül Yazma

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 5 dk okuma

Tableau'da hesaplanmış alan oluşturma adımları, IF ve CASE örnekleri, satır düzeyi ile toplulaştırma farkı, FIXED LOD ve hata ayıklama ipuçları.

Hesaplanmış alan ne zaman gerekir?

Tableau'da hesaplanmış alan (Calculated Field), veri kaynağınızda bulunmayan bir değeri formülle türettiğiniz yeni bir alandır. Kâr marjı, hedefe göre durum etiketi, ad ve soyadın birleşimi, tarihten çıkarılan ay bilgisi ya da müşteri başına ilk sipariş tarihi gibi değerler tipik örneklerdir. Kaynak tabloya sütun eklemek yerine hesaplanmış alan yazmanın avantajı, verinin kendisine dokunmadan mantığın çalışma kitabı içinde kalması ve gerektiğinde değiştirilebilmesidir.

Tableau yardım belgeleri hesaplanmış alanları türlere ayırır: temel hesaplar (satır düzeyinde ya da toplulaştırılmış), ayrıntı düzeyi ifadeleri (LOD: INCLUDE, EXCLUDE, FIXED) ve tablo hesapları. Genellikle iş temel hesaplarla başlar; LOD ve tablo hesapları ihtiyaç büyüdükçe devreye girer.

Yeni bir hesaplanmış alan gerekip gerekmediğine karar vermek için basit bir soru sorun: İhtiyaç duyduğum bilgi veri kaynağındaki alanlardan tek bir sürükle-bırak ile elde edilebiliyor mu? Cevap hayırsa, formül yazma zamanı gelmiştir.

Adım adım: ilk hesaplanmış alanı oluşturma

Tableau Desktop'ta menü çubuğundan Analysis > Create Calculated Field seçeneğini kullanın. Arayüz Türkçe ise menü adları farklı görünebilir; işlev aynıdır. Açılan Calculation Editor penceresinde şu sırayı izleyin:

  • Alana açıklayıcı bir ad verin. "Kâr Marjı" gibi kısa ve anlamı net bir ad, sonradan çalışma kitabını açan biri için hayat kurtarır.
  • Formülü yazın. Alan adlarını köşeli parantez içinde yazarsınız; yazmaya başladığınızda Tableau öneri listesi açar. Editörün sağındaki üçgen simge fonksiyon listesini açar; listede her fonksiyonun söz dizimi, açıklaması ve örneği vardır, çift tıklayınca formüle eklenir.
  • Pencerenin alt kısmında formülün geçerli olup olmadığına dair bir durum mesajı görünür. Hata varsa kaydetmeden önce düzeltin.
  • OK'e tıklayın. Yeni alan Data panelinde belirir. Sayı döndüren alan ölçü (measure) olarak eklenir; veri tipi simgesinin yanında eşittir işareti (=) görünür.

İlk deneme olarak şu formülü yazabilirsiniz:

SUM([Profit]) / SUM([Sales])

Bu alanı Rows rafına sürüklediğinizde, görünümdeki ayrıntı düzeyine (örneğin bölge ya da kategori) göre kâr marjını verir.

Satır düzeyi mi, toplulaştırılmış mı? En sık yanılgı

Hesaplanmış alanlarda ilk kavranması gereken fark, formülün satır satır mı yoksa toplamlar üzerinden mi çalıştığıdır. Şu formüller aynı görünür ama farklı sonuç verir:

[Profit] / [Sales] SUM([Profit]) / SUM([Sales])

Birincisi her satır için kâr marjını hesaplar; görünümde toplulaştırılırsa satır marjlarının toplamı ya da ortalaması çıkar ve genellikle istediğiniz sonuç değildir. İkincisi önce görünümdeki kırılıma göre toplamları alır, sonra böler. Marj, oran ve ortalama gibi hesapların neredeyse hepsinde ikinci biçim doğrudur.

Kural şöyle özetlenebilir: Bir alanı, aynı formülde hem toplulaştırılmış hem toplulaştırılmamış kullanmayın. Biri toplanmış, diğeri satır düzeyindeyse Tableau hata verir. Çözüm ya hepsini toplamak ya da hesabı satır düzeyinde bitirip sonucu görünümde toplulaştırmaktır.

Mantıksal, metin ve tarih hesapları: yaygın kalıplar

Koşullu etiketleme için IF yapısı kullanılır:

IF SUM([Profit]) > [Hedef Kâr] THEN "Hedefin üstünde" ELSEIF SUM([Profit]) > SUM([Sales]) * [Kabul Marjı] THEN "Takip" ELSE "Hedefin altında" END

Burada Hedef Kâr ve Kabul Marjı, ayrı birer parametre ya da alan olarak tanımlanmış varsayılır. Seçenek sayısı çok olduğunda CASE daha okunaklıdır:

CASE [Segment] WHEN "Consumer" THEN "Bireysel" WHEN "Corporate" THEN "Kurumsal" ELSE "Diğer" END

Metin birleştirmede + işareti kullanılır: [City] + ", " + [State] ifadesi şehir ve eyalet alanlarını tek etikette birleştirir. Boş (NULL) değerler birleştirmeyi bozabilir; bu durumda ZN ya da IFNULL ile varsayılan değer verilir.

Tarih hesaplarında DATETRUNC ile tarih belirli bir düzeye indirgenir: DATETRUNC('month', [Order Date]) siparişleri ay başlangıcına çeker. Böylece aylık trend çizgisi için ayrı bir sütun açmanız gerekmez. Fonksiyon adlarının bazı sürümlerde farklı Türkçe karşılıkları olabilir; formüllerde İngilizce adlar geçerlidir.

LOD ve tablo hesaplarına geçiş

Görünümün ayrıntı düzeyinden bağımsız bir değer gerektiğinde ayrıntı düzeyi ifadeleri devreye girer. En çok kullanılan biçim FIXED'dir:

{ FIXED [Customer Name] : MIN([Order Date]) }

Bu alan her müşteri için ilk sipariş tarihini verir; görünümde hangi boyutu kullanırsanız kullanın müşteri düzeyinde sabit kalır. Yeni müşteri analizi, kohort tablosu ve yaşam boyu değer hesaplarının temelinde bu kalıp bulunur. INCLUDE görünüme ek bir boyutu hesaba katar, EXCLUDE ise bir boyutu hesaptan çıkarır.

Tablo hesapları ise yalnızca görünümdeki sonuçlar üzerinde çalışır: sıralama, yüzde toplam, hareketli ortalama gibi. Bunlar için sonuç, sürükleme düzenine ve hesaplama yönüne (Compute Using) bağlıdır. Tablo hesaplarında önce görünümü doğru kurup sonra yönü ayarlamak, ters sonuç alma riskini azaltır.

Türlerin yerini şöyle ayırın: Satır ya da toplam mantığı için temel hesap, görünümden bağımsız sabit düzey için LOD, görünümdeki sonuç sırası ya da yüzdesi için tablo hesabı.

Hata ayıklama ve temiz çalışma kitabı alışkanlıkları

Hesap yanlış sonuç veriyorsa kontrol listesi basittir: • Formül geçerli görünüyor ama sonuç beklenmedikse, alanı bir Text tablosuna sürükleyip satır düzeyinde bakın. • Boş değer var mı? NULL, sonuçları sessizce bozar; ZN ya da IFNULL ile açıkça işleyin. • Veri tipi doğru mu? Metin olarak gelen tarih ya da sayı, hesaba girmez. • Toplulaştırma tutarlı mı? Bir formülde hem toplam hem satır değeri karıştırılmış olabilir. • Filtre sırası etkili mi? FIXED ifadeleri bazı filtrelerden önce çalışır; bu yüzden filtre uygulayınca beklediğiniz kadar değişmeyebilir.

Çalışma kitabını başkalarıyla paylaşıyorsanız alanlara anlamlı ad verin, karmaşık formüllere yorum satırı ekleyin (// ile başlayan satır) ve aynı mantığı farklı sayfalarda tekrar yazmak yerine tek hesaplanmış alanı yeniden kullanın. Böylece mantık değiştiğinde tek noktadan güncellersiniz.

Performans için de bir not: Satır düzeyinde çok karmaşık hesaplar büyük veri setlerinde yavaşlamaya yol açabilir. Mümkünse veriyi kaynakta hazırlayın, Tableau içinde ise yalnızca görselleştirme için gerekli hesapları tutun.

Hesaplanmış alanları Mindset eğitiminde nerede çalışırsınız?

Tableau ile Veri Görselleştirme Uygulamaları eğitiminde hesaplanmış alanlar ve ileri analizler ayrı bir modül olarak yer alır; veri bağlantısı ve hazırlığı, dinamik görselleştirme, dashboard tasarımı ve performans modülleriyle bir arada işlenir. Eğitim, raporlama ekiplerinde çalışan analistler ve Tableau'ya yeni geçen iş zekası uzmanları için uygundur.

Ekibinizde aynı KPI'ı farklı kişiler farklı formülle hesaplıyorsa, kurumsal bir çalışmada ortak hesap kütüphanesi oluşturmak bu eğitimin doğal çıktılarından biri olabilir.

İlgili Mindset programı

Tableau ile Veri Görselleştirme Uygulamaları

Sık sorulanlar

Sık sorulan sorular

Tableau'da hesaplanmış alan nereden oluşturulur?

Menü çubuğundan Analysis > Create Calculated Field seçeneğini kullanırsınız. Açılan Calculation Editor penceresinde alana ad verir, formülü yazar ve OK ile kaydedersiniz. Data panelindeki oka tıklayıp aynı seçeneğe ulaşmak da mümkündür. Yeni alan Data panelinde, simgesinin yanında eşittir işaretiyle görünür.

Hesaplanmış alan ile parametre arasındaki fark nedir?

Hesaplanmış alan bir formülün sonucudur ve veri kaynağındaki değerlere göre otomatik hesaplanır. Parametre ise kullanıcının değiştirebildiği tek bir değerdir. İkisi birlikte kullanılabilir: parametre eşik değeri tutar, hesaplanmış alan bu eşiğe göre etiket üretir.

Kâr marjı neden satır düzeyinde bölünce yanlış çıkar?

Satır düzeyinde bölme her satırın marjını hesaplar; görünümde bu oranlar toplanır ya da ortalanır. Doğru marj için önce kâr ve satış toplanmalı, sonra bölünmelidir. Bu yüzden oran hesaplarında SUM ile toplulaştırılmış biçim kullanılır.

FIXED ifadesi ne zaman kullanılır?

Görünümdeki boyutlardan bağımsız, belirli bir düzeyde sabit bir değer gerektiğinde kullanılır. Örneğin her müşterinin ilk sipariş tarihi ya da bölge başına toplam satış. Sonucu başka hesaplarda tekrar kullanmak için de uygundur.

Hesaplanmış alan boş (NULL) dönüyorsa ne yapmalıyım?

Önce kaynak alanlarda boş değer olup olmadığına bakın. Boş değerleri ZN ile sıfırlayabilir ya da IFNULL ile varsayılan bir değer atayabilirsiniz. Veri tipinin doğru olduğunu da kontrol edin; metin olarak tanımlı sayı hesapta çalışmaz.

Tableau Hesaplanmış Alan (Calculated Field) Nasıl Yapılır