Power BI’da (Boş) Değerler: Sıfıra Çevirmek, Göstermek ya da Kaynağını Düzeltmek
Beceri rehberi

Power BI’da (Boş) Değerler: Sıfıra Çevirmek, Göstermek ya da Kaynağını Düzeltmek

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

Power BI’da “boş” görünen şey birkaç ayrı sorun olabilir: ölçünün BLANK dönmesi, kategori sütunundaki boş değer ya da eşleşmeyen ilişki satırı. Her birinin nedeni, sıfıra çevirme yolu ve yan etkisi farklıdır.

Bir bakışta

  1. Boş görünen şey birkaç ayrı soruna işaret edebilir. Ölçü BLANK dönebilir, kategori sütununda boş değer olabilir ya da ilişkide eşleşmeyen bir anahtar bulunabilir.
  2. Ölçüyü sıfıra çevirmenin yolu COALESCE’tir. İlk boş olmayan ifadeyi döndürür; son argüman olarak sıfır verirseniz boş ölçü sıfır görünür.
  3. Sıfır, her kategoriyi görünür kılar. Ölçü artık boş dönmediği için verisi olmayan satırlar da listeye girer; bu hem okunurluğu hem hızı etkileyebilir.
  4. Boş ile sıfır farklı bilgilerdir. Boş “veri yok”, sıfır “ölçüm var, sonuç sıfır” demektir; her ölçüyü sıfırlamak bu ayrımı siler.
  5. (Boş) kategori çoğunlukla veri sorunudur. Çözüm görselde değil, kaynakta ya da ilişkinin eksik anahtarlarında aranır.

Boş neden görünür? Farklı kaynaklar

Raporda boş ya da “(Boş)” yazan hücre gördüğünüzde ilk iş sorunun hangi türden olduğunu ayırmaktır, çünkü her birinin çözümü farklıdır.

Birincisi, ölçünün kendisi BLANK dönüyordur. Power BI görsel oluştururken ölçüyü uygular ve ölçü değeri boş olan satır ve sütunları varsayılan olarak göstermez. Bu yüzden hiç satış olmayan bir ay grafikte yer almaz ya da matriste hücre boş kalır.

İkincisi, kategori sütununun kendisinde boş değer vardır. Veri kaynağında bölge alanı doldurulmamış bir satır, görselde “(Boş)” adlı ayrı bir kategori olarak çıkar.

Üçüncüsü, bir tablodaki anahtarın ilişkili tabloda karşılığı yoktur. Satış tablosunda bulunup ürün tablosunda olmayan bir ürün kodu, ürün boyutunda boş bir üye olarak görünür. Microsoft belgesi bunu ilişki bütünlüğü ihlali olarak adlandırır.

Bir de kavramsal fark vardır: DAX’ta BLANK, sıfır ya da boş metinle her zaman aynı davranmaz. Belgeye göre bazı işlemler bunları eşdeğer sayar, bazıları saymaz. Bu yüzden sonucu sıfır göstermek istiyorsanız bunu açıkça yazmak gerekir.

Şekil 1

Boş görünümün nedeni, çözümün nerede aranacağını belirler

Hangi boşlukla karşı karşıyasınız?

Rapordaki boşluk nasıl görünüyor?
  1. Ölçü hücresi boş ya da satır hiç görünmüyorÖlçüde ya da alan ayarında düzeltinCOALESCE veya veri içermeyen öğeleri göster seçeneği.
  2. Kategori adı “(Boş)” olarak listeleniyorKaynakta doldurunKaynak sütunda boş değer vardır; etiketle değiştirin.
  3. Ürün ya da müşteri boyutunda boş üye çıkıyorİlişkideki eksik anahtarı bulunOlgu tablosundaki anahtar boyutta yoktur.
Kaynak: sayfa içeriği; boş üye davranışı Microsoft Learn: VALUES function (DAX)Mindset Institute

Ölçüyü sıfıra çevirmek: COALESCE, IF ve DIVIDE

Ölçünün boş dönmesi sorun değil de sıfır görünmesi isteniyorsa en temiz yol COALESCE’tir. İşlev argümanlarını sırayla değerlendirir ve ilk boş olmayanı döndürür. Microsoft belgesindeki örnek tam bu işi yapar: toplam satışı alır, boşsa sıfır verir.

Toplam Satış (Sıfırlı) = COALESCE(SUM('Satışlar'[Tutar]), 0)

Aynı sonucu IF ile de elde edebilirsiniz:

Toplam Satış (Sıfırlı) = IF(ISBLANK(SUM('Satışlar'[Tutar])), 0, SUM('Satışlar'[Tutar]))

İkisi aynı görünür ama COALESCE daha kısa ve ifadeyi bir kez yazdırır. Mevcut bir ölçüyü sıfırlamak için, ölçüyü yeniden yazmak yerine başka bir ölçü içinde çağırmak da mümkündür:

Satış (Sıfırlı) = COALESCE([Toplam Satış], 0)

Bölmede durum biraz farklıdır. DIVIDE, payda sıfır olduğunda varsayılan olarak BLANK döndürür; üçüncü argümana sabit bir değer verirseniz bölme hatası sıfır görünür:

Oran = DIVIDE([Hedef Gerçekleşen], [Hedef], 0)

Alternatif sonucun sabit olması gerektiğini unutmayın; bir ölçü ya da sütun veremezsiniz.

Eksik ayları sıfırla göstermek

Aylık satış grafiğinde veri olmayan aylar eksenden düşüyorsa, ölçüyü COALESCE ile sıfırlamak onları geri getirir. Ancak ölçü artık hiçbir zaman boş dönmediği için tarih tablosundaki bütün aylar görünür. Verinin bittiği tarihten sonraki aylar da sıfırla listelenir ve grafik gerçek dışı bir düşüş gösterir.

Çözüm, sıfırı yalnızca verinin geçerli olduğu döneme uygulamaktır. Son veri tarihini bir ölçüyle bulup karşılaştırın:

Son Veri Tarihi = CALCULATE(MAX('Satışlar'[Sipariş Tarihi]), REMOVEFILTERS('Takvim'))

Satış (Dönemli Sıfır) = IF(MAX('Takvim'[Tarih]) <= [Son Veri Tarihi], COALESCE([Toplam Satış], 0))

REMOVEFILTERS, son tarihin grafikteki ayın değil tüm dönemin son satış tarihi olmasını sağlar; olmasaydı satışı olmayan bir ayda son tarih de boş döner ve o ay sıfır yerine yine boş kalırdı. Koşul sağlanmazsa IF üçüncü argüman olmadığı için BLANK döner ve gelecek aylar eksenden yine düşer. Böylece veri bulunan ama satışı olmayan aylar sıfırla, henüz gelmemiş aylar ise hiç gösterilmez.

Bu kalıp için bir tarih tablosunun olması şarttır. Ölçü yalnızca satış tablosundaki tarihlerle çalışırsa satış olmayan ay zaten tabloda olmaz ve sıfırlanacak bir şey kalmaz.

Sıfırın yan etkileri

Her ölçüyü sıfıra çevirmek cazip görünür ama bedeli vardır.

Önce anlam kaybı: boş “veri yok”, sıfır ise “veri var, sonuç sıfır” demektir. Bir ürünün belirli bir ayda satılmaması ile o ay hiç ölçüm yapılmamış olması aynı şey değildir. Tüm boşlukları sıfırlarsanız rapor bu ayrımı kaybeder.

Sonra görünürlük: ölçü hiç boş dönmediği için tablo ve matris, verisi olmayan tüm boyut satırlarını da listeler. Çok sayıda ürünün olduğu bir matriste satışı olmayan ürünler sıfır satırı olarak doldurur, rapor uzar ve yavaşlar.

Bu yüzden sıfırı seçici kullanın. Kart ve gösterge görsellerinde, tek bir değerin boş yerine sıfır görünmesi mantıklıdır. Tablo ve matriste ise çoğu zaman boşluğu korumak daha doğrudur.

Şekil 2

Sıfır, yalnızca anlamlı olduğu yerde kullanıldığında yardımcı olur

Sıfırlama alışkanlıkları

Sık yapılan
Doğrusu
Her ölçüyü COALESCE ile sıfırlamak
Sıfırı yalnızca kart ve gösterge ölçülerinde kullanmak
Gelecek ayları da sıfırla göstermek
Son veri tarihine kadar sıfır göstermek
Boş kategoriyi ölçüyle gizlemeye çalışmak
Boş kategoriyi kaynakta etiketle doldurmak
Boş ve sıfırın farkını yok saymak
“Veri yok” ile “sonuç sıfır” ayrımını korumak
Kaynak: sayfa içeriğiMindset Institute

“Veri içermeyen öğeleri göster” seçeneği

Ölçüyü değiştirmeden eksik kategorileri görünür kılmanın başka bir yolu alan düzeyinde bir seçenektir. Görselin eksen, satır, sütun ya da gösterge alanındaki alan adının yanındaki menüden “Show items with no data” seçeneği açılır (Türkçe arayüzdeki adı sürüme göre değişebilir). Bu durumda ölçü boş olsa bile ilgili kategori görselde listelenir ve hücre boş kalır.

Microsoft belgesine göre bu seçenek bazı durumlarda etkisizdir: görselde hiç ölçü yoksa ve gruplar aynı tablodansa, gruplar birbiriyle ilişkisizse, ölçü gruplarla ilişkisizse ya da boş ölçüleri eleyen bir kullanıcı filtresi varsa. Ayrıca bir alan için açıldığında aynı alan kutusundaki diğer alanlar için de otomatik açılır.

Belgede ayrıca bir uyarı yer alır: seçeneği açmak performansı olumsuz etkileyebilir, görsellerin yavaş çizilmesine ya da dışa aktarma zaman aşımlarına yol açabilir. Bu nedenle seçeneği kategori sayısı makul olan alanlarda ve gerçekten ihtiyaç olduğunda kullanın.

Karşılaştırma açıktır: COALESCE ile hücre sıfır görünür ve her yerde etkilidir; seçenek ile hücre boş kalır ve etki yalnızca o görselde olur. “Veri yok” bilgisini korumak istiyorsanız seçenek, sıfırı göstermek istiyorsanız COALESCE uygundur.

(Boş) kategori ve boş satırların kaynağını bulmak

Görselde “(Boş)” adlı bir kategori çıkıyorsa sorun görselde değil, veridedir. İlk adım hangi türden olduğunu ayırmaktır.

Kategori sütununda gerçek boş değerler varsa, kaynakta ya da Power Query’de bu değerleri “Bilinmiyor” gibi açık bir etiketle değiştirmek en sağlam çözümdür. Veri modeli içinde çözmek isterseniz bir hesaplanmış sütun da kullanılabilir:

Bölge (Dolu) = COALESCE('Satışlar'[Bölge], "Bilinmiyor")

Kaynaktan boş metin olarak gelen değerler BLANK sayılmayabilir ve bu formülle değişmeyebilir; böyle bir durumda değiştirmeyi Power Query’de yapmak daha güvenilirdir.

Boş satır olgu tablosundaki bir anahtarın boyutta bulunmamasından geliyorsa, boş üyeyi görünmez kılmak sorunu çözmez; eşleşmeyen anahtarları bulmak gerekir. Bir ölçüyle sayabilirsiniz:

Eşleşmeyen Satış Sayısı = COUNTROWS(FILTER('Satışlar', ISBLANK(RELATED('Ürünler'[Ürün Kodu]))))

Sonuç sıfırdan büyükse satış tablosunda ürün tablosunda bulunmayan kodlar vardır. Eksik ürünleri boyuta ekleyin ya da kaynaktaki yanlış kodları düzeltin. Bu işlem hem “(Boş)” satırını hem de bu satırın altında kaybolan satışları görünür ve doğru hale getirir.

Bu beceriyi Mindset programlarında nerede çalışırsınız?

Uygulamalı Power BI ile Veri Analitiği ve Görselleştirme Sertifika Programı, veri analizi ve işleme teknikleri ile veri modelleme ve yönetimi başlıklarında eksik veriyi ve ilişki sorunlarını ele alır; DAX analiz dili ve kullanımı başlığı ölçü yazımını kapsar. Rapor hazırlayan analistler için boş değer yönetimi, güvenilir bir rapor ile yanıltıcı bir rapor arasındaki farktır.

İlgili Mindset programı

Uygulamalı Power BI ile Veri Analitiği ve Görselleştirme Sertifika Programı

Sık sorulanlar

Sık sorulan sorular

Boş ile sıfır arasındaki fark rapor okurunu nasıl etkiler?

Boş hücre okura “bu dönem için veri yok” der, sıfır ise “veri var ve sonuç sıfır” der. Bir satış ekibinin hiç satış yapmaması ile verinin henüz yüklenmemiş olması farklı yorumlara yol açar. Sıfırlamadan önce okurun hangi anlamı çıkaracağını düşünün.

Tablo görselinde boş hücreyi sıfır göstermek için biçimlendirme yeterli mi?

Güvenilir bir yol değildir. Sayı biçimi yalnızca var olan sayıların görünümünü belirler; ölçü boş döndüğünde biçimlendirilecek bir sayı yoktur. Sıfırın her görselde ve dışa aktarmada tutarlı görünmesi için ölçünün COALESCE gibi bir işlevle sıfır döndürmesi gerekir.

Neden COALESCE sonrası tüm ürünler tabloda listeleniyor?

Ölçü artık hiçbir ürün için boş dönmediğinden Power BI hiçbir satırı eleyemez. Satışı olmayan ürünler de sıfırla görünür. Listeyi daraltmak için görsel düzeyinde bir filtre ekleyin ya da sıfırlamayı yalnızca kart gibi tek değerli görsellerin ölçüsünde kullanın.

Veri içermeyen öğeleri göster hangi durumlarda işe yaramaz?

Görselde ölçü yoksa ve gruplar aynı tablodansa, gruplar ya da ölçü birbiriyle ilişkisizse ve boş ölçüleri eleyen bir filtre varsa etkisizdir. Bu durumlarda ya ilişkiyi ve ölçüyü kontrol edin ya da ölçüyü COALESCE ile sıfırlayarak çözün.

Bölme hatasını sıfır olarak göstermek doğru mu?

DIVIDE payda sıfırsa varsayılan olarak boş döner, çoğu raporda bu doğru davranıştır çünkü sıfıra bölünen oran tanımsızdır. Kullanıcıya sıfır göstermek yanıltıcı olabilir. Sıfır gösterecekseniz DIVIDE’ın üçüncü argümanını sabit bir değerle verin ve bu kararı raporda belirtin.