top of page

Tableau ile İş Zekası # 10

Fonksiyonlar ve Hesaplamalar #1

Fonksiyonlara ya da hesaplamalara, Tableau’da çalışmalar yaparken bir çok farklı alanda ihtiyaç duymaktayız. Peki Tableau hangi tip fonksiyonları destekliyor bunlara değinip daha sonra hesaplama türlerine bir giriş yapalım.


Tableau’da Analysis > Create Calculated Field seçeneklerini izlediğimizde karşımıza hesaplamaları yapmamız için bir pencere açılıyor ve bu pencere ile birlikte, kullandığımız ya da kullanmak istediğimi fonksiyonların detayını gösteren bir ekran daha açılıyor, bu ekranda Tableau üzerinde kullanabileceğiniz tüm fonksiyonları görebilir, inceleyebilir ve syntax yapısını öğrenebilirsiniz.

Aynı zamanda ilgili ekranda, hangi alt kategorilerde fonksiyonlar bulunduğunu görüntüleyebilir, filtreleme yapabilirsiniz. Temelde 9 farklı fonksiyon kategorisi görmekteyiz. 1- Number Functions Sayısal ve Matematiksel işlemler yapabileceğiniz fonksiyonları kapsar. 2- String Functions String veri tipinde kullanabileceğiniz fonksiyonları kapsar. 3- Date Functions Daha önceki yazılarımızda da değindiğimiz, tarihsel veriler ile alakalı işlemler yapabileceğiniz fonksiyonlar. 4- Type Conversion Functions Kullanacağınız alanların veri tipini değiştirmek istediğinizde ihtiyaç duyacağınız fonksiyonlar. 5- Logical Functions Boolean ya da True False olarak belirtebileceğimiz, belirli bir şartın sağlanıp sağlanmadığını incelemek için kullanılan fonksiyonlar. 6- Aggregate Functions Görüntülediğiniz verinin ayrıntı düzeyini özetlemenize ya da değiştirmenize yarayan fonksiyonlardır. Netleştirmek adına örnek verecek olursak, firmanızın satış verilerini incelerken, COUNTD formulü ile farklı satışları saydırıp ekrana sürüklediğiniz varsayalım. Tüm veri setindeki satışları hesaba katacaktır. Ancak yıllara göre görmek istediğinizde, yıl verisinide ekrana sürüklerseniz, verinizin ayrıntı düzeyi yıllara bölünecektir. 7- User Functions Yalnızca belli kullanıcıların görmesini ya da düzenlemesini istediğimiz çalışmalar için kullanıcı düzeyinde ya da satır düzeyinde filtrelemeler yapmamızı sağlayan fonksiyonlardır. 8- Table Calculation Functions O an ekranda görselleştirmiş olduğunuz veriler üzerinde, hesaplamalar yapabileceğiniz fonksiyonlardır. Table Calculation fonksiyonlarına serimizin devamında ayrıca detaylı bir şekilde değineceğiz. 9- Spatial Functions Coğrafi ya da diğer uzamsal veriler ile gelişmiş ve çeşitli analizler yapabileceğiniz fonksiyonlardır. Aynı zamanda bu veri tiplerini farklı veriler ile entegre ederek çalışmalar oluşturmanıza olanak sağlar.


Temelde bu dokuz kategoriden oluşan Tableau fonksiyonlarına ilave olarak, bazı farklı dosya tiplerindeki verileri anlamlı hale getirebilmek için, temel modellemeler ya da Regex işlemleri yapmak için kullanabileceğiniz fonksiyonlarda hazır olarak sunulmaktadır. Belirttiğimiz fonksiyonları kombine bir şekilde kullanarak ortaya çok boyutlu ve kompleks hesaplamalar çıkarabiliriz ancak temelde bir çok fonksiyonun ne işe yaradığı kolaylıkla anlaşılmaktadır. Tableau’da anlaşılması görece zor olan fonksiyonlar vardır bunlardan birisi Aggregation Fonksiyonlarıdır. Calculated Field ekranında formüller yazarken kesinlikle karşımıza “cannot mix aggregate and non-aggregate arguments with this functions” gibi bir hata çıkmıştır. Bunun sebebi, aggregate fonksiyonları kullandığımız bir hesaplama ile, aggregate işlemi yapılmamış verileri birlikte kullanmaya çalışıyor oluşumuz. AVG, COUNT, MAX, MIN, SUM, ATTR, INCLUDE, FIXED gibi fonksiyonları Aggregate fonksiyonlarına örnek olarak verebiliriz. Veriler temelde bir çok farklı ayrıntı detayında üretilir ve analiz edilir. Burada kullandığımız ayrıntı kelimesi, verinin detay seviyesi olarak belirtilebilir. Örnek olarak bir sınavın sonuç verisini inceliyor olalım, ayrıntı düzeyimiz veri setindeki satırları oluştursan her bir öğrenciyi ya da her bir sınıfı mı temsil edebilir. Ayrıntı düzeyi hangisini tanımlıyor, analizimizi hangi grubu baz alarak yapıyoruz burada önemli olan nokta budur. Peki, tüm öğrencileri bir bütün olarak baz alırsak yani ayrıntı düzeyini azaltırsak? Bu durumda aggregation yapmamız gerekiyor. Dolayısıyla ayrıntı düzeyi ve aggregation birbirini tamamlayan kavramlar olarak anlaşılmaktadır. Aggregation temelde, birden fazla değeri alıp, bize tek bir değer olarak getiren bir matematiksel işlemdir. Toplama, Ortalama, Minimum ya da Maximum değer bulma gibi işlemler örnek gösterilebilir. Sonuçta, Aggregation fonksiyonlarını, verileri daha düşük bir ayrıntı detayında görmek istersek kullanırız.


Daha açıklayıcı olmak için bir örnek üzerinden gidelim. Öncelikle Sample-Superstore verimize bağlanıyoruz. Aşağıdaki gibi Profit verisini Sales verisine bölerek, kar oranı hesaplayan bir formül yazalım ancak herhangi bir aggregation fonksiyonu kullanmayalım.


İlk olarak Region verimizi Rows kısmına sürükleyip, oluşturduğumuz Kar Oranı hesaplamasını ise Marks > Text kısmına bırakalım. Bu durumda, hesaplamamız aslında bölge kırılımında, her bir satırdaki kar verisini, yine o satırdaki satış verisine bölerek, çıkan sonucu bir aggregation fonksiyonu olan SUM fonksiyonu ile toplayacak.


Şimdi yine tekrar bir hesaplama yapalım ancak bu sefer Kar Oranı 2 adını verdiğimiz hesaplamada, kullandığımız Profit ve Sales alanlarını aggregation fonksiyonları ile beraber hesaba dahil edelim. Yani aggregation işlemini önden yapalım. Bu durumda Tableau, her bir bölge için, kar rakamlarını önceden toplayacak, sonra yine bölge özelinde topladığı satış rakamlarına bölecek.


Oluştudurumuz yeni hesaplamayıda hali hazırda oluşturmuş olduğumuz crosstab’ın üzerine sürükleyip bırakalım. Dilerseniz, Marks kısmında, oluşturduğumuz bu yeni hesaplamaya sağ tıklayarak, Format seçeneğinden Percentage tipini seçebilirsiniz.


İki hesaplamayıda yanyana gösterdiğimizde aslında aggregation işleminin nasıl sonuçlar getirdiğini açık bir şekilde görebiliyoruz. Dikkat ederseniz, Marks kısmında ilk hesaplamızın önünde SUM() ibaresi varken, ikinci hesabımızın önünde AGG() ifadesi var yani önceden aggregation yapıldığını belirtiyor.


Görüldüğü üzere, ilk hesaplamamızı aggregation yapmadan satır seviyesinde bir hesaplama ile oluşturmuştuk, ikinci hesabımızı ise önden aggregation yaparak bölge seviyesinde oluşturduk. Dolayısıyla aslında Kar Oranı 2 ismini verdiğimiz hesabın, doğru kar oranını getirdiğini görebiliyoruz. Burada, satır seviyesinde yapmış olduğumuz hesaplamayı kullanamayız gibi bir anlam çıkarılmamalı, bu tür hesaplarıda kullandığımız durumlar söz konusu olabilir, yani iki hesaplamayıda ihtiyacımız dahilinde kullanabiliriz. Fakat, genelde karşımıza hesaplamaların aggregation fonksiyonu kullanılarak yapıldığı durumlar daha çok karşımıza çıkmaktadır.


Bu platformda Tableau hakkında Türkçe bir kaynak oluşturmaya çalışacağız, diğer makale ve içeriklerimiz için takipte kalabilirsiniz. Tableau hakkında yayınladığımız çok sayıda video, makale ve diğer içeriklerimize ise Yeni Nesil İş Zekası web sitemizden erişebilirsiniz.

14 görüntüleme

İlgili Yazılar

Hepsini Gör
bottom of page