Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
Dalam catatan blog ini, kami akan menangani beberapa isu yang menyusahkan dalam perisikan masa, terutamanya isu yang disebabkan oleh butiran minggu dan masalah yang boleh disebabkan oleh bilangan minggu yang tidak teratur dalam setahun. Kami akan menggunakan offset untuk menghasilkan risikan masa yang tepat dalam DAX.
Kami mempunyai senario yang menarik untuk anda hari ini. Ini muncul beberapa kali baru-baru ini dalam forum LuckyTemplates. Perkara yang orang mahu lakukan ialah mengambil visual (yang boleh menjadi graf garis atau carta bar) dan mengubahnya secara dinamik pada tarikh mula. Anda boleh menonton video penuh tutorial ini di bahagian bawah blog ini.
Dalam kes ini, kami menggunakan set data yang sama yang kami gunakan untuk purata harga spot setong minyak . Daripada hanya sentiasa bermula pada awal bulan Januari, kami mahu dapat mengklik visual, menukarnya kepada tarikh mula yang berbeza, tetapi sentiasa menunjukkan satu tahun data.
Isi kandungan
Contoh Senario Perisikan Masa Dalam DAX
Terdapat beberapa sebab mengapa anda mungkin ingin melakukan teknik ini. Anda boleh menggunakan ini jika anda mempunyai metrik yang sentiasa dilaraskan semula dari segi cara metrik itu dikira. Anda mungkin hanya mahu menunjukkan data dari tempoh pelarasan semula ke hadapan.
Satu lagi sebab untuk menggunakan ini adalah jika anda ingin menggambarkan ini dalam cara animasi. Ini pada asasnya akan mengambil data anda dan menunjukkannya secara dinamik sebaik sahaja anda mengklik pada akses main.
Dalam visual ini, kita boleh menukar tarikh mula bulan demi bulan untuk menunjukkan cara ia berubah dalam tempoh 12 bulan dari semasa ke semasa. Ini visual yang menarik dan berguna untuk kes perniagaan yang berbeza, tetapi secara teorinya, ia juga mewakili beberapa isu utama yang berkaitan dengan DAX dan pemodelan data.
Mari pergi ke LuckyTemplates dan lihat model data kami dahulu. Ini ialah model data yang sangat mudah dengan jadual tarikh lanjutan dan jadual harga spot yang disambungkan kepada tarikh.
Menggunakan Offset Untuk Kecerdasan Masa Dalam DAX
Salah satu perkara yang akan kami usahakan ialah mengimbangi . Offset dalam jadual tarikh lanjutan dikira secara dinamik. Setiap kali laporan sama ada dimuat semula atau dibuka, ia akan melalui kod M. Contohnya dalam offset bulanan, ia menetapkan bulan semasa dengan 0, bulan sebelumnya dengan -1 dan dua bulan kembali dengan -2. Melihat ke hadapan pada masa hadapan, ia menetapkan +1 bulan hadapan dan +2 untuk dua bulan pada masa hadapan.
Ini adalah konsep yang mudah tetapi sangat berkuasa apabila anda berurusan dengan kecerdasan masa dalam DAX dan bekerja dengan bulan , suku tahun dan minggu . Jika anda tidak menggunakan ofset, ini kadangkala menimbulkan kerumitan yang agak besar dalam pengiraan anda.
Menggunakan offset bermakna menggunakan siri nombor yang berterusan di mana pulangan sebulan sentiasa -1 dan pergi ke hadapan sebulan sentiasa +1 tidak kira di mana anda berada pada tahun itu.
Melaksanakan Strategi Itik Getah Untuk Kecerdasan Masa Dalam DAX
Pada masa lalu, saya telah bercakap tentang itik getah , yang menyatakan strategi anda dengan lantang sebelum anda mula menulis DAX anda.
Saya sedang berfikir dengan lantang tentang cara saya mengendalikan perkara ini dari konteks bulanan menggunakan kecerdasan masa dalam DAX. Saya akan memulakan sesuatu berdasarkan tahun dan bulan yang dipilih, dan pilih mereka yang menggunakan jadual terputus, kerana jika anda memikirkannya, setiap pilihan lain akan melibatkan persilangan tahun (kecuali Januari).
Katakan kita mahu 12 bulan bermula pada bulan Mac, kita akan berakhir dengan sekurang-kurangnya dua bulan pada tahun berikutnya. Jika kami menggunakan penghiris yang disambungkan, kami hanya boleh menapis untuk tahun itu dan tidak akan dapat menapis ke tahun berikutnya.
Menuai Offset Dari Tarikh Mula
Mari lakukan ini dengan jadual bersambung untuk kedua-dua bulan dan tahun. Pertama, kita perlu menuai offset pertama yang berkaitan dengan tarikh mula.
Kemudian kami mahu mengalihkan offset itu ke hadapan sebanyak 12 bulan, dan kemudian hanya melihat tarikh yang berada dalam set offset itu. Biar saya tunjukkan kepada anda rupanya dalam DAX.
Mengira Julat Bulanan
Ini ialah ukuran kami untuk Bulanan Dalam Julat , di mana kami memilih tahun kami (yang kami tuai daripada jadual tahun terputus) dan bulan kami (yang kami tuai daripada jadual bulan terputus).
Kami juga mempunyai parameter lain ini di mana jika tiada pilihan dibuat, ia akan lalai kepada Januari. Parameter ini terutamanya hanya untuk tujuan penyahpepijatan.
Mengira Offset Bulan Permulaan Dan Akhir
Mari kita lihat offset bulan permulaan dengan mengira offset MAX. Kami mengalih keluar semua penapis pada jadual tarikh dan menapis ke bulan dan tahun yang dipilih. Untuk setiap bulan, hanya ada satu offset yang sepadan dengan bulan dan tahun itu.
Dari titik itu, kita boleh mengambil offset bulan akhir , iaitu hanya offset bulan permulaan + 11 bulan.
Dan kemudian kami melihat setiap tarikh yang dipilih dan menentukan sama ada ia termasuk dalam offset bulan awal dan offset bulan akhir. jika ia jatuh dalam tempoh itu, kami memberikannya 1 dan jika tidak, kami memberikannya 0.
Jika kita kembali kepada paparan bulanan dalam visual kita, kita boleh melihat visual Dalam Julat yang telah kita tetapkan sebagai sama dengan satu. Jadi ia hanya menunjukkan bulan tersebut dalam permulaan hingga pengimbangan tamat. Sebagai contoh, jika kita mengklik pada Februari, kita melihat Februari hingga Januari.
Mengira Julat Mingguan
Mari lihat bagaimana ini kelihatan dari sudut pandangan mingguan. Visual pada mulanya bermula dengan baik dan bermula dari minggu 1 hingga minggu 52. Setakat ini, sangat bagus.
Tetapi jika kita mengklik pada tahun-tahun lain dalam penghiris tahun, kita dapat melihat minggu ke-52 manakala ada yang mempunyai minggu ke-53, yang memberikan banyak masalah. Anda boleh melihat daripada contoh ini bahawa masalah itu mula nyata.
Kami mempunyai tempoh permulaan tahun 2020 dan minggu 15 , tetapi tempoh tamat ialah tahun 2021 dan minggu 13 bukannya tahun 2021 dan minggu 14 .
Jika kita kembali ke minggu 1, kita dapat melihat bahawa ia bermula dengan baik, tetapi berakhir pada minggu 52. Jika kita melihat pengiraan minggu 53 di sini, nombor minggu maks untuk 2020 dan 2021 ialah 53 minggu. Ini tidak akan berfungsi untuk butiran mingguan.
Mari lihat apa yang boleh kita lakukan untuk membuat kerja ini. Kita perlu membetulkan pengiraan DAX di sini di bahagian ini:
Ini kerana untuk sesetengah kes, 51 adalah betul apabila terdapat hanya 52 minggu dalam setahun, tetapi untuk tahun di mana terdapat 53 minggu, ia akan meninggalkan tempoh terakhir itu. Inilah yang kami lihat dalam visual dinamik selama berminggu-minggu, di mana pengiraan mengalih keluar tempoh akhir itu pada tahun 2020 dan 2021.
Untuk membetulkannya, kita pergi ke ukuran Salah Mingguan Dalam Julat , yang sebenarnya kelihatan lebih mudah daripada ukuran sebelumnya. Kami mempunyai ukuran offset permulaan dan mengira offset maks. Kemudian kami menanggalkan penapis tarikh, dan kemudian mengenakan penapis pada minggu dan tahun terpilih dengan andaian bahawa ini akan membawa kepada offset yang betul.
Tetapi ini tidak berfungsi kerana tidak kira jika anda menggunakan offset maks atau offset min. Apa yang kami lakukan ialah membungkus pengagregat supaya kami tidak meletakkan lajur telanjang dalam penyata KIRA.
Tetapi jika kita kembali ke sini ke ISO WeekNumber , kita dapat melihat bahawa nombor tahun dan minggu tidak secara unik menentukan offset mingguan dalam tempoh pertama itu.
Saya datang dengan cara kalis peluru untuk melakukan ini. Anda boleh menggunakan MIN, tetapi lebih masuk akal untuk membuat ukuran Offset Minggu1 ini. Untuk mendapatkan offset minggu 1, kami berurusan dengan minggu 2 kerana ia tidak pernah berpecah. Tidak kira sama ada terdapat 52 atau 53 minggu dalam setahun, minggu 2 kekal utuh.
Dalam pengiraan ini, kami menapis ke minggu 2 untuk mendapatkan offset. Dan apabila kita mendapat minggu ke-2 mengimbangi, kita hanya menolak satu daripadanya. Ini secara jelas akan memberi kita offset minggu 1. Ini akhirnya menyelesaikan masalah kita.
Mengira Dalam Julat Mingguan
Dan kemudian kami kembali ke ukuran Mingguan Dalam Julat kami , dan tulis pernyataan IF di mana jika nombor tuaian adalah untuk minggu 1, kami mengira minggu pertama mengimbangi. Jika bukan minggu 1, kami hanya mengira offset minggu permulaan seperti yang kami lakukan dalam pengiraan bulanan sebelum ini.
Dan kemudian offset minggu berakhir akan menjadi offset minggu permulaan + nombor minggu maks yang boleh sama ada 52 atau 53. Kemudian kita hanya tolak 1 supaya tidak mengira dua kali offset permulaan.
Kami boleh melakukan binaan yang sama yang kami gunakan untuk julat bulanan untuk menapis minggu, di mana apa-apa yang berada di antara permulaan dan pengimbangan akhir mendapat 1 dan apa-apa yang tidak mendapat 0.
Kemudian kita akan meletakkan ukuran Mingguan Dalam Julat ke dalam anak tetingkap penapis. Segala-galanya menyemak dan kelihatan betul-betul betul.
Kita boleh mengklik pada paksi main dan menjalankan butiran minggu. Kita dapat melihat bahawa ia berfungsi dengan betul seperti yang berlaku dalam konteks bulan.
Kesimpulan
Ini adalah penyelaman yang cukup mendalam ke dalam perisikan masa dalam DAX, di mana kami membincangkan cara kami boleh menangani beberapa masalah sekitar nombor minggu. Saya harap anda mendapati tutorial ini membantu dan memberikan anda beberapa alat tambahan dalam kotak alat anda apabila anda menghadapi situasi minggu yang bermasalah.
Jika anda menikmati kandungan yang diliputi dalam tutorial khusus ini, sila jangan lupa untuk melanggan saluran TV LuckyTemplates. Kami mempunyai sejumlah besar kandungan yang keluar sepanjang masa daripada saya sendiri dan pelbagai pencipta kandungan, semuanya berdedikasi untuk menambah baik cara anda menggunakan LuckyTemplates dan Power Platform.
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