Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
Saya ingin menyelam lebih mendalam tentang sesuatu yang dipanggil analisis gabungan. Ini boleh ditakrifkan sebagai pemilihan dan penyusunan elemen set mengikut peraturan yang ditetapkan. Ia mungkin terdengar esoterik, tetapi ia sebenarnya mempunyai beberapa kes penggunaan yang sangat praktikal. Anda boleh menonton video penuh tutorial ini di bahagian bawah blog ini.
Dalam tutorial ini, saya akan menunjukkan kepada anda cara melakukan ini menggunakan Power Query dalam LuckyTemplates.
Isi kandungan
Contoh Kes Analisis Gabungan
Dalam analisis gabungan contoh ini, tugasnya ialah kami mempunyai senarai enam gudang dan kami perlu menjana setiap set unik tiga. Kedengarannya seperti masalah yang agak mudah, tetapi ini adalah salah satu kes di mana bahasa sangat penting.
Jawapan yang betul di sini ialah sama ada 216, 120, 56 atau 20. Jadi, bergantung pada cara anda mentakrifkan set unik itu dan peraturan yang anda tetapkan, anda boleh terkeluar dengan faktor 10 jika anda tidak mendapat set itu dengan betul.
Oleh itu, terdapat dua dimensi yang penting di sini. Yang pertama ialah " adakah pesanan penting ?" Jadi apabila kita bercakap tentang tiga set tiga, adakah ABC bersamaan dengan BCA? Jadi adakah pesanan penting? Dan jika pesanan penting , kita bercakap tentang pilih atur .
Contoh pilih atur yang baik di mana pesanan boleh menjadi penting ialah (kita bercakap tentang konteks gudang) dalam kes masa perjalanan. Mungkin jika anda melawat gudang A, kemudian gudang B, dan kemudian gudang C, masa perjalanan disebabkan aliran trafik dengan trafik melawan trafik, masa anda tiba di setiap gudang, mungkin agak berbeza bergantung pada pesanan di mana anda melawat mereka.
Bahagian sebaliknya ialah " perintah tidak penting ", dalam hal ini kita bercakap tentang gabungan , bukan pilih atur. Kes penggunaan di sini yang biasa adalah jarak. Sebagai contoh, semasa burung gagak terbang, jarak dari A ke B ke C tidak akan berbeza daripada jarak dari B ke C ke A. Ia akan dipertimbangkan dalam konteks gabungan.
Gabungan dianggap pendua antara satu sama lain. Manakala, dalam konteks pilih atur, mereka akan dianggap unik.
Oleh itu, seperti yang anda boleh lihat, kunci gabungan sepatutnya menjadi kunci pilihatur kerana dalam kes itu, perintah itu penting, menjadikannya pilih atur, bukan gabungan.
Soalan atau dimensi kedua yang penting ialah " apabila item dipilih, bolehkah ia dipilih semula ?" Sebagai contoh, jika kita memilih A sebagai gudang pertama kita, bolehkah kita memilih A sekali lagi, atau adakah kita perlu memilih elemen unik setiap kali?
Istilah yang kami gunakan di sini ialah " dengan penggantian " atau " tanpa penggantian ". Jadi, jika item boleh dipilih semula, itu dengan penggantian, bermakna anda memilihnya. Dan dari satu segi, ia kembali ke dalam tong pilihan dan untuk dipilih semula. Jika jawapannya tidak, ia tiada pengganti.
Oleh itu, anda boleh melihat dalam penyelesaian ini bahawa pilih atur dengan penggantian adalah yang paling tidak terhad. Jadi itulah yang memberi kita 216 set unik. Dan gabungan tanpa penggantian adalah yang paling ketat memberi kita 20.
Kami hanya akan menggunakan formula ini sebagai cara untuk menyemak hasil Power Query kami . Oleh itu, kita akan mengingati 216, 120, 56 dan 20. Sekarang mari kita beralih ke Power Query dan lihat bagaimana analisis gabungan ini berfungsi.
Analisis Kombinatorial: Pilihatur Dalam Power Query
Dalam Power Query, saya ada di sini kes yang sangat mudah dengan enam gudang bernama.
Dan saya telah membangunkan fungsi Power Query M ini, yang telah saya gunakan untuk memproses kombinasi dan pilih atur.
Pertama, saya akan membangunkan kes penggunaan pertama itu, iaitu pilih atur dengan penggantian , yang paling tidak menyekat kumpulan itu. Cara untuk melakukannya dalam Power Query ialah dengan mengambil jadual Warehouses ini dan merujuknya (dalam DAX, kami menggunakan CROSSJOIN ).
Saya akan memanggil ini, Per w Rep (permutasi dengan penggantian).
Terdapat beberapa cara anda boleh melakukan sambung silang dalam Power Query. Cara paling mudah yang saya temui ialah pergi sahaja Tambah lajur , kemudian lajur Tersuai . Dalam formula lajur tersuai, rujuk jadual Gudang .
Dan perkara yang akan kita temui apabila kita mengklik OK ialah ia menghasilkan jadual bersarang.
Kemudian, kami mengembangkannya dan menyahklik nama Gunakan lajur asal sebagai awalan .
Dan kami mendapat Lokasi ini.1 , iaitu setiap gabungan dua yang mungkin. Jadi ia memerlukan enam rujukan pertama berbanding enam kombinasi lain. Enam kedua melakukan perkara yang sama sehingga kami mempunyai 36 set berbeza.
Kita boleh melakukan yang ketiga dengan melakukan ini sekali lagi. Jadi kita pergi Tambah lajur, kemudian lajur tersuai, dan kemudian Gudang.
Dan kita akan mempunyai 216 baris sebagai pilih atur dengan penggantian.
Dan anda boleh lihat dari bawah di sini, 3 lajur, 216 baris.
Kes penggunaan seterusnya ialah pilih atur tanpa penggantian . Apa yang kita fikirkan di sini pada dasarnya adalah segala-galanya yang mempunyai unsur berulang. Jadi dalam jadual ini, kita akan melihat dari baris 1 hingga baris 8.
Untuk melakukan itu, kita akan melihat fungsi ini, fxSortAndIsDistinct .
Dalam Editor Lanjutan, anda boleh melihat ini pada asasnya meminta jadual, dan kemudian ia melakukan SortLocs . Tetapi bahagian penting di sini untuk "dengan penggantian" atau "tanpa penggantian" ialah ini ialah fungsi IsDistinct . Perkara ini hanya pada asasnya mengambil senarai elemen dan menentukan benar atau salah, sama ada ia berbeza atau sama ada ia mempunyai sebarang pendua dalam senarai item.
Jadi kita pergi ke sini, pilih Perm w Rep , dan tekan Invoke .
Ini akan memberi kami dua lajur baharu ini, SortLocs dan IsDistinct . Sekarang, ingat bahawa lapan rekod pertama mempunyai pendua dan rekod kesembilan adalah kali pertama kami melihat rekod yang berbeza . Itulah sebabnya baris kesembilan di sini adalah yang pertama yang muncul sebagai benar.
Jika kita memikirkan kembali nombor yang kita ada pada pengiraan faktorial, kita menjangkakan 120 rekod jika kita mengeluarkan rekod yang tidak jelas. Jadi, mari cuba tapis di sini dan keluarkan yang PALSU.
Semasa kami melakukan itu, kami mendapat di sini tepat 120 baris yang kami jangkakan. Sekarang mari kita namakan semula ini sebagai Perm wo Rep (permutasi tanpa penggantian).
Analisis Kombinatorial: Gabungan Dalam Power Query
Sekarang kita akan melakukan kombinasi dengan penggantian . Untuk melakukan itu, kami hanya melakukan proses sekali lagi dan ulangi langkah itu (Fungsi Invoked). Jadi tidak mengapa kita mempunyai pendua, tetapi kita tidak mahu set yang mempunyai elemen yang sama , tetapi dalam susunan yang berbeza.
Dalam kes ini, apabila kita bercakap tentang kombinasi. Jika anda ingat bahawa ABC adalah sama dengan BCA adalah sama dengan CAB, itu semua dianggap pendua antara satu sama lain. Dan cara kami menentukannya adalah melalui fungsi Sort ( fxSortAndIsDistinct ).
Jika kita kembali ke fungsi dalam Editor Lanjutan, kita akan melihat untuk lajur kedua yang kita telah mengambil senarai itu dan mengisihnya mengikut abjad. Kemudian, kami mengekstrak nilai yang dibatasi oleh koma daripada senarai itu. Sekarang kita mempunyai setiap set disusun mengikut abjad. Kami telah menormalkan pesanan untuk memudahkan pencarian pendua.
Sekarang jika kita kembali ke Fungsi Dikenakan ini, ingat bahawa kita sedang mencari 56 rekod di sini. Jadi kami mengambil lokasi seperti ini ( SortLocs ) dan mengalih keluar pendua kami .
Dengan itu, kami mendapat 56 baris.
Jadi, ini adalah kes penggunaan ketiga kami. Mari namakan semula ini sebagai CC w Rep (gabungan dengan penggantian).
Mari kita bungkus yang ini dengan mengambil semula pilih atur itu dengan jadual penggantian (Perm w Rep) dan lakukan corak yang sama (invoke). Kemudian, kami akan mengalih keluar pendua (lajur SortLocs) kerana ini adalah gabungan dan susunan tidak penting. Ia tanpa penggantian, jadi kami juga mahukan senarai yang berbeza sahaja . Jadi, kami klik FALSE dalam lajur IsDistinct.
Dengan ini, kami mendapat 20 rekod. Dan kini kami mempunyai keempat-empat kes penggunaan kami.
Menyusun Lajur Jadual Tarikh Dalam LuckyTemplates
Panduan Pemula Kepada Kod M Dalam LuckyTemplates
Menukar Fungsi Jadual Tarikh Kepada Pertanyaan Jadual Dalam LuckyTemplates
Kesimpulan
Jadi sekarang kami mempunyai keempat-empat kes penggunaan kami. Anda boleh melihat betapa hebatnya ini dari segi membangunkan analisis gabungan yang memberi anda kawalan ke atas penggantian dan elemen yang berbeza.
Ini juga boleh digunakan dalam beberapa kes yang lebih kompleks di mana anda mempunyai penggantian separa, atau mungkin memilih elemen pendua untuk yang pertama, tetapi bukan untuk kali kedua. Anda masih boleh mengendalikannya dengan baik dalam Power Query .
Saya harap anda mendapati ini berguna. Semak pautan di bawah untuk lebih banyak kandungan. Anda juga boleh menonton video penuh tutorial ini di bawah.
Semua yang terbaik!
Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
Anda akan belajar cara menyimpan dan memuatkan objek daripada fail .rds dalam R. Blog ini juga akan membincangkan cara mengimport objek dari R ke LuckyTemplates.
Dalam tutorial bahasa pengekodan DAX ini, pelajari cara menggunakan fungsi GENERATE dan cara menukar tajuk ukuran secara dinamik.
Tutorial ini akan merangkumi cara menggunakan teknik Visual Dinamik Berbilang Thread untuk mencipta cerapan daripada visualisasi data dinamik dalam laporan anda.
Dalam artikel ini, saya akan menjalankan konteks penapis. Konteks penapis ialah salah satu topik utama yang perlu dipelajari oleh mana-mana pengguna LuckyTemplates pada mulanya.
Saya ingin menunjukkan cara perkhidmatan dalam talian LuckyTemplates Apps boleh membantu dalam mengurus laporan dan cerapan berbeza yang dijana daripada pelbagai sumber.
Ketahui cara untuk menyelesaikan perubahan margin keuntungan anda menggunakan teknik seperti mengukur percabangan dan menggabungkan formula DAX dalam LuckyTemplates.
Tutorial ini akan membincangkan tentang idea pewujudan cache data dan cara ia mempengaruhi prestasi DAX dalam memberikan hasil.
Jika anda masih menggunakan Excel sehingga sekarang, maka inilah masa terbaik untuk mula menggunakan LuckyTemplates untuk keperluan pelaporan perniagaan anda.
Apakah LuckyTemplates Gateway? Semua yang Anda Perlu Tahu