Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Bu öğretici, Tarih tablosunda değişen bir 0-1 modeli oluşturmak için Power Query M number.mod işlevini kullanmaya odaklanır. Size göstereceğim çözüm, LuckyTemplates'teki topluluk uzman kullanıcılarımızdan biri olan Rajesh'ten geldi. Bu eğitimin tam videosunu bu blogun alt kısmından izleyebilirsiniz.

Amaç, birbirini izleyen dört sıfırdan oluşan bir dizi oluşturmak ve ardından bunu gün boyunca tekrarlamaktır.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Rajesh, çözmek için Power Query M işlevini kullanarak yaptığı analiz ve sorun dökümüyle dikkat çekti. Bununla birlikte, Power Query'ye geçelim.

İçindekiler

Power Query M Number.Mod İşlevi

Power Query M, özellikle de number.mod işlevi, çözümümüzün çekirdeği olacak. Bu ne işe yarıyor?

Burada formül çubuğunda gösterildiği gibi adını parantezsiz girerek herhangi bir M işlevinin dahili belgelerini kontrol edebilirsiniz. Bu işlev, bir tamsayı bölümünün kalanını döndürür. İlk ikisi bir sayı olan ve yine bir sayı olan bölen olmak üzere en fazla üç parametre alır.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Şimdi başlayalım. Hazırladığım tarih aralığını içeren örnek sorgumu seçeceğim.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Çoğu durumda, number.mod, daha sonra ilk parametresi olarak kullanılan bir dizin sütunuyla birlikte kullanılır. Ama bunu yapmayacağım çünkü düşünürseniz tarih değeri bir tamsayıdır. Dolayısıyla, Tarih sütunuyla aynı ayrıntı düzeyini paylaşan ve her satırın benzersiz bir değere sahip olduğu bir dizin oluşturmak, kaçınabileceğimiz bir şeydir.

Bir dizini taklit etmek için yapmamız gereken tek şey, Tarih tablomuzdaki ilk tarihi Tarih sütunundaki her tarihten çıkarmaktır. Bunu yapmak için, başlangıç ​​tarihi değerini bir değişkende saklayabiliriz, böylece bunu tekrar tekrar kullanabiliriz. Gelişmiş Editör'ün bunu yapmak için en iyi yer olduğunu düşünüyorum.

Bu yüzden Advanced Editor penceresini açıp yeni bir değişken oluşturacağım. Buna StartDate diyelim . İlk Randevu'mu buraya kodladım, bu yüzden onu kopyalayıp yapıştıracağım. Sondaki virgülü unutmayın ve artık bu İlk Tarihi Başlangıç ​​Tarihi değişkenimizle değiştirebiliriz.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Gördüğünüz gibi hiçbir şey değişmedi.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Power Query M Modeli İçin Özel Sütun Oluşturma

Bu mini tablo aracılığıyla özel bir sütun ekleyeceğiz.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Bu sütunu Pattern olarak adlandıralım ve Power Query M işlevine number.mod olarak girelim . Burada iki parametre görüyorsunuz, null yapılabilir bir sayı olarak bir sayı ve null yapılabilir bir sayı olarak bir bölen. Bu nedenle, parametre olarak iki sayı türü değeri gerektirir.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Şimdi numaramız yok, değil mi? Tarihlerimiz var ve bunlarda otomatik tür dönüştürme diye bir şey yok. Bu yüzden tarih değerimizden sayıyı almamız gerekiyor. Bu yüzden buraya , tarih sütunumuza sayı .

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Şimdi, Date tablomuzdaki ilk tarihin bir döndürdüğünü varsayalım , ardından StartDate'imiz de bir döndürecek. Ve böylece, bir eksi bir sıfıra eşittir. Dizin numaralandırmamızın sıfır yerine bir ile başlamasını istiyorum. Yani bir artı bir eklemeliyiz. Şimdi bir eksi bir eşittir sıfır artı bir, ilk kayıt için bir döndürür.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

İkinci kayıt için, Tarih sütunundaki tarih için iki (2) bir değer elde ederiz, bire eşit olan StartDate değerimizden bir (1) eksi bir, artı geri eklediğimiz bir iki döndürür vb. . Tekrar eden modelimiz, birbirini izleyen dört değerden oluşan bir diziye dayanıyordu. Bölen olarak dört (4) değerini geçeceğim.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Bunun ne işe yaradığını görelim. Dördüncü satırda, sekizinci satırda olduğu gibi sıfır elde ederiz. Böylece her dördüncü oluşum, o kayıt için sıfır değeri döndürür.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

IF-THEN-ELSE Yapısı Oluşturma

Müşteri iletişim kutumuza geri dönelim ve şu ana kadar yazdığımız mantığı genişletelim. Bölen dışında, sekizinci oluşumu tanımlayabilmek için aynı mantığı tekrarlamamız gerekiyor.

Ancak o sekizinci satırda farklı bir değer istiyoruz. Dolayısıyla, dördüncü ve sekizinci oluşum arasında bir ayrım yapmak için bir EĞER-THEN-ELSE yapısı kullanabiliriz. Bu şekilde, true döndüren ilk mantıksal test için bir değer döndürebiliriz.

Eğer , ve ben kodumuzu buraya geri yapıştıracağım (bölen hariç), bu böleni sekize çevirin , böylece sekizinci satır sıfır döndürür. Yani bu sıfıra eşitse, doğru ya da yanlış yolunda başarısız olacağı anlamına gelir. Sonra bir (1) istiyoruz. Aksi takdirde , buradaki mantığımız dördüncü bir satırın sıfıra eşit olduğunu belirlerse, o zaman sıfır (0) isteriz. Aksi takdirde, bir değeri geri almak istemiyoruz. Öyleyse bir null ekleyelim .

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Şimdi tekrar mantığımızı kontrol edelim. Yani her dördüncü geçişte, o sıfırı elde ederiz. Ve sonra, sekizincide, bir tane alırız. Sonra, sıfır ve bir alırız, vb.

Yani bu iyi görünüyor. Şimdi tek yapmamız gereken bu değerleri doldurmak.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli

Böylece formül çubuğunun içine, başta bir Table.FillUp ve ardından bazı açılış parantezleri ekleyeceğiz . Kodumuzun sonuna tip numarası ekliyoruz – ayrıca liste olarak bir sütun da eklememiz gerekiyor. Böylece, virgüle gidiyoruz , ardından liste başlatıcı için süslü parantezleri kullanıyoruz ve bir metin değeri olarak sütun adımız olan Pattern'i geçiyoruz . Kapatma parantezlerini unutmayın ve Tamam'a basın.

Power Query M: Tarih Tablosunda Alternatif 0-1 Modeli


LuckyTemplates'daki M Koduna Yeni Başlayanlar Kılavuzu
Tarih Tablosu İçin M İşlevi – Sorgu Düzenleyicide Parametre Ekleme
LuckyTemplates'da Tarih Tablosu Sütunlarını Sıralama

Çözüm

Bu çok benzersiz bir senaryo ve dürüst olmak gerekirse, bu belirli kalıp için bir uygulama düşünemiyorum, ancak umarım Power Query M işlevi olan number.mod'u kullanarak dizi oluşturma potansiyelini görebilirsiniz.

Daha fazla ayrıntı için, bu eğitim için aşağıdaki tam videoyu izleyin.

Herşey gönlünce olsun!

melisa

Leave a Comment

Excel Hücrelerini Metne Sığdırma: 4 Kolay Çözüm

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.

Bir Excel Dosyasının Boyutu Nasıl Küçültülür – 6 Etkili Yöntem

Bir Excel Dosyasının Boyutu Nasıl Küçültülür – 6 Etkili Yöntem

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.

Pythonda Self Nedir: Gerçek Dünyadan Örnekler

Pythonda Self Nedir: Gerçek Dünyadan Örnekler

Python'da Self Nedir: Gerçek Dünyadan Örnekler

Rde Bir RDS Dosyası Nasıl Kaydedilir ve Yüklenir

Rde Bir RDS Dosyası Nasıl Kaydedilir ve Yüklenir

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.

İlk N İş Günü Tekrar Ziyaret Edildi – Bir DAX Kodlama Dili Çözümü

İlk N İş Günü Tekrar Ziyaret Edildi – Bir DAX Kodlama Dili Çözümü

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.

LuckyTemplatesda Çok İş Parçacıklı Dinamik Görsel Tekniği Kullanarak Öngörüleri Sergileyin

LuckyTemplatesda Çok İş Parçacıklı Dinamik Görsel Tekniği Kullanarak Öngörüleri Sergileyin

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.

LuckyTemplatesda İçeriği Filtrelemeye Giriş

LuckyTemplatesda İçeriği Filtrelemeye Giriş

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 Çevrimiçi Hizmetindeki Uygulamaları Kullanmak İçin En İyi İpuçları

LuckyTemplates Çevrimiçi Hizmetindeki Uygulamaları Kullanmak İçin En İyi İpuçları

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.

Fazla Mesai Kâr Marjı Değişikliklerini Analiz Edin - LuckyTemplates ve DAX ile Analitik

Fazla Mesai Kâr Marjı Değişikliklerini Analiz Edin - LuckyTemplates ve DAX ile Analitik

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.

DAX Studioda Veri Önbellekleri İçin Materyalleştirme Fikirleri

DAX Studioda Veri Önbellekleri İçin Materyalleştirme Fikirleri

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.