Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
Mendapatkan semula nilai tempoh sebelumnya dalam LuckyTemplates ialah tugas biasa, tetapi mendapatkan semula nilai minggu sebelumnya memerlukan perhatian khusus. Dalam tutorial ini, saya akan membincangkan dua kaedah mudah dan serba boleh untuk mendapatkan nilai minggu sebelumnya LuckyTemplates yang boleh menjadi tambahan berguna pada kotak alat anda – satu menggunakan DAX dan satu lagi menggunakan Power Query. Anda boleh menonton video penuh tutorial ini di bahagian bawah blog ini.
Tutorial ini datang daripada soalan yang saya dapat daripada ahli LuckyTemplates. Ahli itu bertanya apakah cara paling mudah untuk menentukan nombor minggu sebelumnya. Ini adalah soalan biasa yang saya hadapi. Nampaknya agak mudah, tetapi semakin anda mendalaminya, semakin anda menyedari bahawa terdapat banyak perkara yang perlu diproses.
Isi kandungan
Nilai Minggu Sebelumnya Dalam LuckyTemplates: Masalahnya
Jika kita melihat nombor minggu, kita mempunyai 52 minggu; darabkan itu dengan tujuh hari (seminggu) dan itu menjadi 364. Jadi, dalam setiap tahun, terdapat satu hari tambahan, dan kemudian untuk tahun lompat, terdapat dua hari tambahan. Satu atau dua hari tambahan ini akhirnya menyebabkan banyak masalah.
Mari buat ukuran daripada jadual Dates kami. Kami akan memanggilnya MAX Minggu # (nombor). Dalam analisis ini, kami menggunakan Jadual Tarikh Lanjutan LuckyTemplates; ini mempunyai ISO Weeknumber , yang sangat membantu. Sekarang, mari kita ambil MAX Nombor Minggu ISO.
Sekarang, mari kita ambil jadual dan lepaskan Tahun serta # Minggu MAX kami . Set data ini mempunyai 10 tahun data, dan kami melihat bahawa dua tahun pertama mempunyai 52 minggu. Kemudian, kami mempunyai dua tahun dengan 53 minggu, tiga tahun dengan 52 minggu, dan kemudian dua tahun lagi dengan 53 dan satu dengan 52.
Tidak ada corak yang boleh dilihat di sini. Bukan mudah untuk kembali dan meramalkan bahawa satu tahun anda akan mempunyai 52 minggu dan tahun yang lain anda akan mempunyai 53 minggu.
Perkara seterusnya yang mungkin anda fikirkan jika anda biasa dengan fungsi risikan masa DAX ialah menggunakan fungsi DATEADD , yang mengalihkan julat tarikh kembali mengikut tempoh tertentu. Ia melakukannya dengan sangat baik untuk Hari, Bulan, Suku Tahun dan Tahun, tetapi ia tidak termasuk Minggu, jadi kita perlu mencari cara lain untuk melakukan ini.
Dalam Jadual Tarikh Lanjutan LuckyTemplates yang kami gunakan, Melissa (salah seorang pakar LuckyTemplates) telah memasukkan fungsi yang dipanggil OFFSETS . Mari kita mendalami fungsi ini kerana ia adalah kunci utama dalam menyelesaikan masalah ini dari perspektif DAX.
Melihat tempoh semasa (contohnya 20 Januari yang merupakan tempoh mencipta tutorial ini), apa yang kita lihat ialah mengimbangi sama dengan sifar . Cara ofset berfungsi ialah untuk tempoh semasa, ofset mendapat sifar.
Minggu sebelum minggu semasa adalah minggu negatif, dua minggu sebelum minggu semasa adalah dua minggu negatif, dan seterusnya. Dan kemudian, ia pergi ke hadapan daripada nombor positif; minggu depan dapat satu, dua minggu dapat dua, dsb.
Setiap kali anda membuka laporan berbanding tarikh hari ini, ia mengira offset. Ini sangat berkuasa dan sekarang saya akan menunjukkan kepada anda betapa mudahnya untuk menangani beberapa masalah sukar seperti nombor LuckyTemplates minggu sebelumnya ini apabila anda menggunakan offset.
Mendapatkan LuckyTemplates Minggu Sebelum Menggunakan DAX
Mari buat ukuran baharu dan panggil Wk Sebelumnya # . Kami akan bermula dengan pembolehubah ( SelWkOffset ), di mana kami hanya akan melakukan SELECTEDVALUE daripada WeekOffset . Jadi, dalam baris semasa, ia akan menarik WeekOffset itu dan meletakkannya dalam pembolehubah kami.
Pembolehubah seterusnya ialah Result . Ini adalah hasil muktamad yang kami mahukan dan kami akan menggunakan CALCULATE kerana kami akan mengubah konteks.
Kemudian, kami mahukan Nombor Minggu MAX ISO dan itu akan tertakluk kepada syarat penapis ini. Jadi, kami akan mengalih keluar semua penapis pada jadual Tarikh, jadi kami akan menggunakan SEMUA di sini. Jika kami mempunyai pemotong tarikh, kami mungkin mahu menggunakan ALLSELECTED , tetapi buat masa ini kami tidak melakukannya, jadi kami hanya akan menggunakan SEMUA untuk mengalih keluar penapis daripada jadual Tarikh itu.
Dan kemudian, kami akan mengatakan WeekOffset akan sama dengan SelWkOffset tolak satu kami . Di sinilah OFFSET menjadi begitu berkuasa. Anda tidak boleh menggunakan Weeknumber tolak satu kerana itu ditetapkan semula setiap tahun. Tetapi kerana SEMUA OFFSET adalah berurutan, anda boleh memperlakukannya seperti anda merawat mencari tahun sebelumnya dan hanya menolak satu untuk setiap tahun sebelumnya. Jadi ini, offset ini berfungsi dengan cara yang sama dengan nombor berturut-turut.
Kami kini boleh mengambil dan menutup keadaan penapis itu, ditutup MENGIRA, dan hanya KEMBALIKAN Keputusan kami .
Sekarang, mari kita lihat bagaimana langkah ini berfungsi. Dalam jadual di bawah, kita dapat melihat bahawa ia melakukan apa yang kita harapkan. Pada minggu ke-52 untuk tempoh satu pada tahun berikutnya, minggu sebelumnya ialah 52. Dan kemudian, ia melangkah ke belakang satu setiap tempoh, dan seterusnya.
Sekarang, apakah yang anda lakukan dalam kes apabila anda tidak mempunyai offset?
Katakan anda sedang bekerja dengan jadual Tarikh korporat yang datang daripada gudang data anda dan ia tidak termasuk offset ini. Terdapat teknik yang saya ingin tunjukkan kepada anda dalam Power Query. Kali pertama saya melihatnya adalah dalam entri blog oleh Imke Feldmann.
Pendekatan ini berfungsi dengan baik untuk sebarang situasi di mana anda boleh memesan jadual dalam tertib menaik, dan ia tidak perlu mempunyai offset. Ia tidak perlu mempunyai walaupun medan tarikh. Ia boleh menjadi jenis jadual yang sama sekali berbeza. Selagi ia boleh disusun dalam tertib menaik, anda boleh menggunakan teknik ini.
Jadi mari kita rujuk jadual Dates Raw ini dan kita akan panggil Dates . Kemudian, kami memastikan untuk mengisih ini dalam tertib menaik .
Seterusnya, kami mahu berkumpul mengikut minggu . Sebabnya ialah kita akan menambah dua lajur indeks. Apabila kami menambah lajur indeks tersebut, kami mahu lajur tersebut berada pada butiran minggu , bukan pada butiran hari.
Seterusnya, kami ingin menambah lajur indeks tersebut. Perkara penting di sini ialah indeks pertama yang akan kami tambahkan ialah indeks berasaskan 0. Dan kemudian, kami akan menambah indeks kedua iaitu indeks berasaskan 1.
Kemudian, kita akan mengambil lajur ini dan menggabungkan jadual ke dalam dirinya sendiri. Kami akan menggabungkannya berdasarkan dua lajur indeks yang berbeza. Itu akan memberi kita peralihan dalam barisan.
Jadi, jika kita mengambil ini dan menggabungkan yang pertama kepada indeks berasaskan 0 kepada indeks berasaskan 1, ia sepadan dengan 521 pada 522 baris. Itulah yang kami jangkakan kerana jadual kedua tidak akan mengambil indeks sifar kerana ia bermula pada satu.
Selepas itu, kami hanya akan mengembangkan ini dengan betul, hanya menggunakan ISO Weeknumber.
Itu memberikan kami nombor minggu sebelumnya. Dan sekarang, kami hanya akan mengembangkan kumpulan asal kami dan mengeluarkan medan WeekEnding dan nombor minggu ISO asal supaya kami tidak menduplikasi.
Jika kita meletakkannya dalam jadual, anda boleh melihat bahawa keputusan itu betul-betul sama seperti menggunakan teknik DAX. Ia berfungsi sama seperti ukuran DAX kami, tetapi dalam kes ini, kami tidak perlu menggunakan offset.
Kesimpulan
Ini adalah dua cara berbeza dalam cara yang sangat serba boleh untuk mencari nombor minggu sebelumnya. Dalam teknik pertama, anda boleh melihat kuasa offset dalam membuat, apa yang akan menjadi pengiraan yang sukar, agak mudah. Teknik kedua berfungsi sama seperti ukuran DAX kami, tetapi dalam kes ini, kami tidak perlu menggunakan offset.
Semoga tutorial ini membantu anda. Anda boleh menonton tutorial video penuh di bawah dan lihat pautan berkaitan untuk kandungan yang lebih serupa.
Cheers!
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