LuckyTemplatesda Power Query Kullanarak Kombinatoryal Analiz

Kombinasyonel analiz denilen bir şeye derinlemesine dalmak istiyorum. Bu, önceden belirlenmiş kurallara göre küme elemanlarının seçilmesi ve düzenlenmesi olarak tanımlanabilir. Kulağa ezoterik gelebilir, ancak aslında bazı çok pratik kullanım durumları var. Bu eğitimin tam videosunu bu blogun alt kısmından izleyebilirsiniz.

Bu eğitimde, LuckyTemplates'da Power Query kullanarak bunu nasıl yapacağınızı göstereceğim.

İçindekiler

Kombinatoryal Analiz Örneği Vakası

Bu örnek kombinatoryal analizde görev, altı ambardan oluşan bir listemiz olmasıydı ve her üç benzersiz seti oluşturmamız gerekiyordu. Kulağa oldukça basit bir problem gibi geliyor, ancak bu, dilin gerçekten önemli olduğu durumlardan biri.

Buradaki doğru cevap ya 216, 120, 56 ya da 20'dir. Yani, o eşsiz seti nasıl tanımladığınıza ve belirlediğiniz kurallara bağlı olarak, seti doğru şekilde anlamazsanız 10 kat yanılmış olabilirsiniz.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Ve burada önemli olan iki boyut var. İlki “ sıranın önemi var mı ?” Üçlü üç setten bahsederken ABC, BCA'ya eşdeğer midir? Peki sıra önemli mi? Ve eğer düzen önemliyse , permütasyonlardan bahsediyoruz .

Sıranın önemli olabileceği iyi bir permütasyon örneği (bir ambar bağlamından bahsediyoruz), seyahat süresi durumundadır. A deposunu, ardından B deposunu ve ardından C deposunu ziyaret ederseniz, trafiğe karşı trafik ile trafik akışı nedeniyle seyahat süresi, her bir depoya vardığınız süre, siparişe bağlı olarak oldukça farklı olabilir. onları ziyaret ettiğiniz yer.

Bunun ters tarafı “ sıra önemli değil ”, bu durumda permütasyonlardan değil kombinasyonlardan bahsediyoruz . Buradaki yaygın kullanım durumu mesafedir. Örneğin kuş uçuşu olarak A'dan B'ye C'ye olan mesafe, B'den C'ye olan mesafeden farklı olmayacaktır. Bunlar bir kombinasyon bağlamında ele alınacaktır.

Kombinasyonlar birbirinin kopyası olarak kabul edilir. Oysa bir permütasyon bağlamında benzersiz olarak kabul edilecekler.

Ve böylece, görebileceğiniz gibi, bir şifreli kilit gerçekten bir permütasyon kilidi olmalıdır, çünkü bu durumda sıra önemlidir, onu bir kombinasyon değil, bir permütasyon yapar.

Önemli olan ikinci soru veya boyut, " bir öğe bir kez alındığında, tekrar alınabilir mi ?" Örneğin, ilk depomuz olarak A'yı seçersek, tekrar A'yı seçebilir miyiz, yoksa her seferinde benzersiz öğeler mi seçmek zorundayız?

Burada kullandığımız tabir “ değiştirme ile ” veya “ yedekleme olmadan ” şeklindedir. Yani, bir öğe tekrar alınabiliyorsa, bu değiştirme ile olur, yani onu seçersiniz. Ve bir anlamda, tekrar seçilmek üzere seçim kutusuna geri döner. Cevap hayır ise, ikamesizdir.

Ve böylece, bu çözümde yer değiştirmeli permütasyonların en az kısıtlayıcı olduğunu görebilirsiniz . Demek bize 216 benzersiz set veren bu. Ve değiştirilmeyen kombinasyonlar, bize 20 vererek en kısıtlayıcıdır.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Power Query sonuçlarımızı kontrol etmenin bir yolu olarak bu formülleri kullanacağız . Böylece 216, 120, 56 ve 20'yi hatırlayacağız. Şimdi Power Query'e geçelim ve bu kombinatoryal analizin nasıl sonuçlandığını görelim.

Kombinatoryal Analiz: Power Query'deki Permütasyonlar

Power Query'de, burada adlandırılmış altı ambar içeren çok basit bir durumum var.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Kombinasyonları ve permütasyonları işlemek için kullandığım bu Power Query M işlevini geliştirdim.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

İlk olarak, grubun en az kısıtlayıcı olan replace ile permütasyon olan ilk kullanım durumunu geliştireceğim . Power Query'de bunu yapmanın yolu, bu Ambarlar tablosunu alıp ona başvurmaktır (DAX'te CROSSJOIN kullanıyoruz ).

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Buna Per w Rep (değiştirme ile permütasyonlar) diyeceğim .

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Power Query'de çapraz birleştirme yapmanın birkaç yolu vardır. Bulduğum en kolay yol, sütun ekle'ye ve ardından Özel sütun'a gitmek . Özel sütun formülünde, Depolar tablosuna başvurun.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Ve Tamam'a tıkladığımızda bulacağımız şey, iç içe geçmiş bir tablo oluşturmasıdır.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Ardından, bunu genişletiyoruz ve Orijinal sütun adını önek olarak kullan seçeneğinin işaretini kaldırıyoruz .

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Ve ikisinin olası her kombinasyonu olan bu Location.1'i elde ederiz . Bu nedenle, diğer altı kombinasyona karşı ilk altı referansı alır. İkinci altı, 36 farklı setimiz olana kadar aynı şeyi yapıyor.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Bunu tekrar yaparak üçüncüsünü de yapabiliriz. Sütun ekle'ye, ardından özel bir sütuna ve ardından Depolar'a gidiyoruz.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Ve değiştirmeli permütasyonlar olarak 216 satırımız olacak.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Aşağıdan da görebilirsiniz, 3 sütun, 216 satır.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Bir sonraki kullanım durumu, değiştirilmeyen permütasyonlardır . Burada düşündüğümüz şey temelde tekrarlanan bir öğeye sahip olan her şeydir. Yani bu tabloda, 1. sıradan 8. sıraya bakacağız.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Bunu yapmak için, fxSortAndIsDistinct adlı bu işleve bir göz atacağız .

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Gelişmiş Düzenleyici'de, bunun temel olarak bir tablo istediğini ve ardından bir SortLocs yaptığını görebilirsiniz . Ancak burada "değiştirmeli" veya "değiştirmesiz" için önemli olan kısım, bunun bir IsDistinct işlevi olmasıdır. Bunun yaptığı, temel olarak bir öğe listesi almak ve doğru veya yanlış olup olmadığını, farklı olup olmadığını veya öğeler listesinde herhangi bir kopya olup olmadığını belirlemektir.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Bu yüzden buraya gidiyoruz, Perm w Rep'i seçip Invoke'a basıyoruz .

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Bu bize bu iki yeni sütunu verecek, SortLocs ve IsDistinct . Şimdi, ilk sekiz kaydın kopyaları olduğunu ve dokuzuncu kaydın farklı olanı ilk gördüğümüz zaman olduğunu unutmayın . Bu yüzden buradaki dokuzuncu sıra doğru olarak görünen ilk sıradır.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Faktöriyel hesaplamalarında elimizdeki sayıları tekrar düşünürsek, net olmayan kayıtları çıkarırsak 120 kayıt bekliyoruz. Öyleyse, burada filtrelemeye çalışalım ve YANLIŞ'ı çıkaralım.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Bunu yaptığımızda, burada tam olarak beklediğimiz 120 satırı elde ediyoruz. Şimdi bunu Perm wo Rep (değiştirmeden permütasyon) olarak yeniden adlandıralım .

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Kombinatoryal Analiz: Power Query'deki Kombinasyonlar

Şimdi replace ile kombinasyonları yapacağız . Bunu yapmak için, işlemi tekrar yaparız ve adımı (Çağırılan İşlev) tekrarlarız. Bu yüzden kopyalarımızın olması sorun değil, ancak aynı öğelere sahip olan ancak farklı bir sırada olan kümeler istemiyoruz .

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Bu durumda, kombinasyonlardan bahsederken. ABC eşittir BCA eşittir CAB olduğunu hatırlarsanız, bunların hepsi birbirinin kopyası olarak kabul edilir. Ve bunu belirleme yöntemimiz, Sıralama işlevi ( fxSortAndIsDistinct ) aracılığıyladır.

Gelişmiş Düzenleyici'deki işleve geri dönersek, o ikinci sütun için o listeyi alıp alfabetik olarak sıraladığımızı görürüz. Daha sonra o listeden virgülle ayrılmış değerleri çıkardık. Şimdi her seti alfabetik olarak sıraladık. Kopyaları bulmayı kolaylaştırmak için sırayı normalleştirdik.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Şimdi bu Çağırılan İşleve geri dönersek, burada 56 kayıt aradığımızı unutmayın. Bu yüzden bu tür bir konumu ( SortLocs ) alıyoruz ve kopyalarımızı kaldırıyoruz .

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Böylece 56 sıra elde etmiş oluyoruz.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Ve böylece, bu bizim üçüncü kullanım durumumuz. Bunu CC w Rep (değiştirme ile kombinasyonlar) olarak yeniden adlandıralım .

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Bu permütasyonları değiştirme (Perm w Rep) tablosunu tekrar alarak ve aynı deseni (invoke) yaparak bunu tamamlayalım. Ardından, kopyaları (SortLocs sütunu) kaldıracağız çünkü bu bir kombinasyon ve sıra önemli değil. Değiştirilmediğinden, yalnızca farklı listeyi de istiyoruz . Bu nedenle, IsDistinct sütununda YANLIŞ'ı tıklıyoruz.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz

Bununla 20 kayıt elde ediyoruz. Ve şimdi dört kullanım durumumuza da sahibiz.

LuckyTemplates'da Power Query Kullanarak Kombinatoryal Analiz


LuckyTemplates'da Tarih Tablosu Sütunlarını Sıralama
LuckyTemplates'da M Koduna Yeni Başlayanlar Kılavuzu
Tarih Tablosu İşlevini LuckyTemplates'da Tablo Sorgusuna Dönüştürün

Çözüm

Şimdi dört kullanım durumumuza da sahibiz. Değiştirme ve farklı öğeler üzerinde kontrol sahibi olmanızı sağlayan kombinatoryal analizi geliştirme açısından bunun gerçekten ne kadar güçlü olduğunu görebilirsiniz.

Bu, kısmen değiştirdiğiniz bazı daha karmaşık durumlarda bile uygulanabilir veya belki birincisi için yinelenen bir öğeyi seçin, ancak ikinci kez değil. Bunu yine de Power Query içinde güzel bir şekilde halledebilirsiniz .

Umarım bunu faydalı bulmuşsundur. Daha fazla içerik için aşağıdaki bağlantılara göz atın. Ayrıca bu eğitimin tam videosunu aşağıdan izleyebilirsiniz.

Herşey gönlünce olsun!

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.