Excel Hücrelerini Metne Sığdırma: 4 Kolay Çözüm
Excel hücrelerini metne sığdırmak için güncel bilgileri ve 4 kolay çözümü keşfedin.
Bu blog yazısında, zaman istihbaratıyla ilgili bazı sıkıntılı konuları, özellikle de hafta parçalılığının neden olduğu sorunları ve bir yıldaki düzensiz hafta sayısının neden olabileceği sorunları ele alacağız. DAX'ta doğru zaman zekası bulmak için ofsetleri kullanacağız.
Bugün sizin için ilginç bir senaryomuz var. Bu, son zamanlarda LuckyTemplates forumunda birkaç kez gündeme geldi. İnsanların yapmak istediği, bir görsel (çizgi grafik veya çubuk grafik olabilir) almak ve bunu başlangıç tarihinde dinamik olarak değiştirmekti. Bu eğitimin tam videosunu bu blogun alt kısmından izleyebilirsiniz.
Bu durumda, petrolün varil başına ortalama spot fiyatı için çalıştığımız aynı veri setini kullandık . Her zaman Ocak ayının başından başlamak yerine, görseli tıklayıp farklı bir başlangıç tarihiyle değiştirebilmek, ancak her zaman bir yıllık verileri göstermek istedik.
İçindekiler
DAX'ta Zaman Zekasına İlişkin Örnek Senaryolar
Bu tekniği yapmak isteyebileceğiniz birkaç neden var. Nasıl hesaplandığı açısından sürekli olarak yeniden ayarlanan bir metriğiniz varsa bunu kullanabilirsiniz. Yalnızca ileriye dönük yeniden düzenleme dönemindeki verileri göstermek isteyebilirsiniz.
Bunu kullanmanın başka bir nedeni, bunu animasyonlu bir şekilde görselleştirmek istemenizdir. Bu, temel olarak verilerinizi alacak ve oynatma erişimine tıkladığınızda dinamik olarak gösterecektir.
Bu görselde, 12 aylık bir süre içinde zaman içinde nasıl değiştiğini göstermek için başlangıç tarihini aydan aya değiştirebiliriz. Bu, farklı iş durumları için ilginç ve yararlı bir görseldir, ancak teorik olarak DAX ve veri modelleme ile ilgili bir dizi önemli konuyu da temsil eder.
LuckyTemplates'a gidip önce veri modelimize bakalım. Bu , genişletilmiş bir tarih tablosu ve tarihlere bağlı bir spot fiyat tablosu ile gerçekten basit bir veri modelidir .
DAX'ta Zaman Zekası İçin Ötelemeleri Kullanma
Üzerinde çalışacağımız şeylerden biri ofsetler . Genişletilmiş tarih tablosundaki ofsetler dinamik olarak hesaplanır. Rapor her yenilendiğinde veya açıldığında, M kodundan geçer. Örneğin bir aylık ofsette, içinde bulunulan ayı 0, önceki ayı -1 ve iki ay öncesini -2 olarak atar. İleriye dönük olarak, bir sonraki aya +1 ve sonraki iki aya +2 atar.
Bu basit bir kavramdır ancak DAX'ta zaman zekasıyla uğraşırken ve aylar , çeyrekler ve haftalarla çalışırken inanılmaz derecede güçlüdür . Bir ofset kullanmıyorsanız, bazen hesaplamalarınızda makul miktarda karmaşıklık yaratır.
Ofsetleri kullanmak, yılın neresinde olursanız olun, bir ay geriye gitmenin her zaman -1 olduğu ve bir ay ileri gitmenin her zaman +1 olduğu sürekli bir sayı dizisi kullanmak anlamına gelir.
DAX'ta Zaman Zekası İçin Lastik Ördek Stratejisini Uygulama
Geçmişte, DAX'inizi yazmaya başlamadan önce stratejinizi yüksek sesle dile getiren lastik ördekten bahsetmiştim .
DAX'ta zaman zekasını kullanarak bunu aylık bir bağlamdan nasıl halledeceğimi yüksek sesle düşünüyorum. Seçilen yıl ve aya göre bir şeye başlardım ve bağlantısız bir tablo kullanarak olanları seçerdim, çünkü düşünürseniz, diğer tüm seçimler kesişen yılları içerecektir (Ocak hariç).
Diyelim ki Mart ayından itibaren 12 ay istiyoruz, sonraki yıl en az iki ay ile bitireceğiz. Bağlı bir dilimleyici kullanırsak, yalnızca o yıl için filtre uygulayabiliriz ve sonraki yıl için filtre uygulayamayız.
Başlama Tarihinden İtibaren Ofsetlerin Hasat Edilmesi
Bunu hem ay hem de yıl için bağlantılı bir tablo ile yapalım. İlk olarak, başlangıç tarihiyle ilgili ilk ofseti toplamamız gerekiyor.
Ve sonra bu ofseti 12 ay ileriye taşımak istiyoruz ve ardından yalnızca bu ofset kümesi içindeki tarihlere bakmak istiyoruz. Bunun DAX'ta nasıl göründüğünü size göstereyim.
Aylık Aralığın Hesaplanması
Bu, Aralık İçinde Aylık için ölçümüzdür ve burada yılımızı (bağlantısız yıl tablosundan topladığımız) ve ayımızı (bağlantısız ay tablosundan topladığımız) seçeriz.
Ayrıca, herhangi bir seçim yapılmazsa, varsayılan olarak Ocak olarak ayarlanacak başka bir parametremiz var. Bu parametre öncelikle yalnızca hata ayıklama amaçlıdır.
Başlangıç ve Bitiş Ay Ofsetlerinin Hesaplanması
Şimdi MAX ofsetini hesaplayarak başlangıç ayı ofsetine bakalım . Tarihler tablosundaki tüm filtreleri kaldırıyoruz ve seçilen ay ve yıla göre filtreliyoruz. Her ay için, o ay ve yıla karşılık gelen yalnızca bir mahsup olmalıdır.
Bu noktadan itibaren, yalnızca başlangıç ayı farkı + 11 ay olan bitiş ayı farkını alabiliriz .
Ardından, seçilen her tarihe bakarız ve ilk ay ofseti ile son ay ofseti arasında olup olmadığını belirleriz. o periyoda girerse 1, değilse 0 veririz.
Görselimizde aylık görünüme geri dönersek, bire eşitlediğimiz Aralık İçi görselini görebiliriz . Yani sadece başlangıçtan bitişe kadar olan ayları gösteriyor. Örneğin, Şubat'a tıklarsak, Şubat'tan Ocak'a kadar görürüz.
Haftalık Aralığın Hesaplanması
Bunun haftalık bir bakış açısıyla nasıl göründüğüne bakalım. Görsel başlangıçta iyi başlar ve 1. haftadan 52. haftaya kadar devam eder. Şimdiye kadar, çok iyi.
Ancak yıl dilimleyicide diğer yıllara tıklarsak 52. haftayı görebiliriz, bazılarının ise 53. haftası vardır ki bu çok fazla sorun sunar. Bu örnekte sorunun kendini göstermeye başladığını görebilirsiniz.
2020 yılı ve 15. hafta başlangıç dönemimiz var ama bitiş dönemi 2021 yılı ve 14. hafta yerine 2021 yılı ve 13. hafta .
1. haftaya geri dönersek, iyi başladığını ancak 52. haftada bittiğini görebiliriz. Burada 53. hafta hesaplamasına bakarsak, 2020 ve 2021 için maksimum hafta sayısı 53 haftadır. Bu, haftalık ayrıntı düzeyi için işe yaramayacak.
Bu işi yapmak için neler yapabileceğimize bir bakalım. DAX hesaplamasını tam da bu kısımda düzeltmemiz gerekiyor:
Bunun nedeni, bazı durumlarda, bir yılda yalnızca 52 hafta olduğunda 51'in doğru olmasıdır, ancak 53 haftanın olduğu yıl için bu son dönemi bırakacaktır. Hesaplamanın 2020 ve 2021 yıllarında o son dönemi çıkardığı haftalarca dinamik görselde gördüğümüz tam olarak buydu.
Bunu düzeltmek için, aslında önceki ölçümden daha basit görünen Aralık İçinde Haftalık Yanlış ölçümüne gidiyoruz . Bir başlangıç ofseti ölçümü yaptık ve maksimum ofseti hesapladık. Ardından, filtreyi tarihlerden çıkardık ve ardından filtreyi, bunun doğru ofsete yol açacağı varsayımıyla seçilen haftaya ve seçilen yıla uyguladık.
Ancak bu işe yaramaz çünkü bir maksimum ofset veya bir min ofset kullanmanız fark etmez. Tek yaptığımız, bir CALCULATE ifadesine çıplak bir sütun koymamak için bir toplayıcıyı sarmak.
Ancak burada ISO WeekNumber'a geri dönersek , bir yıl ve bir hafta numarasının o ilk periyotta haftalık ofseti benzersiz bir şekilde belirlemediğini görebiliriz.
Bunu yapmanın kurşun geçirmez bir yolunu buldum. MIN'i kullanabilirsiniz, ancak bu 1. Hafta Ofset ölçüsünü oluşturmak daha mantıklıdır. 1. haftayı dengelemek için 2. hafta ile uğraşıyoruz çünkü asla bölünmez. Yılda 52 veya 53 hafta olmasına bakılmaksızın, 2. hafta olduğu gibi kalır.
Bu hesaplamada ofseti elde etmek için 2. haftaya kadar filtreleme yapıyoruz. Ve sonra 2. hafta denkleştirmesini elde ettiğimizde, ondan sadece bir çıkarırız. Bu bize açık bir şekilde 1. hafta ofsetini verecektir. Bu, sorunumuzu çözmekle sonuçlanır.
Aralık İçi Haftalık Hesaplama
Ve sonra Aralık İçinde Haftalık ölçümüze geri dönüyoruz ve bir EĞER ifadesi yazıyoruz, burada hasat sayısı 1. hafta içinse, birinci hafta ofsetini hesaplıyoruz. 1. hafta değilse, önceki aylık hesaplamada yaptığımız gibi sadece başlangıç haftası ofsetini hesaplarız.
Ve sonra bitiş haftası ofseti, başlangıç haftası ofseti + 52 veya 53 olabilen maksimum hafta sayısı olacaktır. Ardından, başlangıç ofsetini iki katına çıkarmamak için sadece 1 çıkarırız.
Haftaları filtrelemek için aylık aralık için kullandığımız yapının aynısını yapabiliriz; burada başlangıç ile bitiş ofseti arasında kalan her şey 1 ve olmayan her şey 0 alır.
Ardından Aralık İçinde Haftalık ölçüyü filtre bölmesine yerleştireceğiz. Her şey kontrol ediliyor ve tam olarak doğru görünüyor.
Oynatma eksenine tıklayabilir ve hafta ayrıntı düzeyini çalıştırabiliriz. Ay bağlamında olduğu gibi düzgün çalıştığını görebiliriz.
Çözüm
Bu, hafta sayılarıyla ilgili bazı sorunları nasıl çözebileceğimizi tartıştığımız DAX'teki zaman zekasına oldukça derin bir dalış. Umarım bu öğreticiyi faydalı bulmuşsunuzdur ve sorunlu bir hafta durumuyla uğraşırken alet kutunuzda size bazı ek araçlar sağlamışsınızdır.
Bu özel eğitimde ele alınan içeriği beğendiyseniz, lütfen LuckyTemplates TV kanalına abone olmayı unutmayın. LuckyTemplates ve Power Platform'u kullanma şeklinizi geliştirmeye adanmış, kendimden ve çeşitli içerik oluşturuculardan sürekli olarak gelen çok miktarda içeriğimiz var.
Excel hücrelerini metne sığdırmak için güncel bilgileri ve 4 kolay çözümü keşfedin.
Bir Excel Dosyasının Boyutunu Küçültmek için 6 Etkili Yöntem. Hızlı ve kolay yöntemler ile verilerinizi kaybetmeden yer açın.
Python'da Self Nedir: Gerçek Dünyadan Örnekler
R'de bir .rds dosyasındaki nesneleri nasıl kaydedeceğinizi ve yükleyeceğinizi öğreneceksiniz. Bu blog aynı zamanda R'den LuckyTemplates'a nesnelerin nasıl içe aktarılacağını da ele alacaktır.
Bu DAX kodlama dili eğitiminde, GENERATE işlevinin nasıl kullanılacağını ve bir ölçü başlığının dinamik olarak nasıl değiştirileceğini öğrenin.
Bu eğitici, raporlarınızdaki dinamik veri görselleştirmelerinden içgörüler oluşturmak için Çok Kanallı Dinamik Görseller tekniğinin nasıl kullanılacağını kapsayacaktır.
Bu yazıda, filtre bağlamından geçeceğim. Filtre bağlamı, herhangi bir LuckyTemplates kullanıcısının başlangıçta öğrenmesi gereken en önemli konulardan biridir.
LuckyTemplates Apps çevrimiçi hizmetinin çeşitli kaynaklardan oluşturulan farklı raporların ve içgörülerin yönetilmesine nasıl yardımcı olabileceğini göstermek istiyorum.
LuckyTemplates'da ölçü dallandırma ve DAX formüllerini birleştirme gibi teknikleri kullanarak kâr marjı değişikliklerinizi nasıl hesaplayacağınızı öğrenin.
Bu öğreticide, veri önbelleklerini gerçekleştirme fikirleri ve bunların DAX'ın sonuç sağlama performansını nasıl etkilediği tartışılacaktır.