การประยุกต์ใช้ window functions

การวิเคราะห์อนุกรมเวลาใน Power BI

Kevin Barlow

Data Analytics Professional

บริบทและความสำคัญ

Expanding และ Rolling window functions นำไปใช้ได้หลากหลายรูปแบบ!

มีการคำนวณหลายอย่างที่สามารถใช้กับช่วงเวลาเฉพาะได้:

- RANK()
- LOOKUPVALUE()
- CHISQ.INV()
- GEOMEAN()
การวิเคราะห์อนุกรมเวลาใน Power BI

SAMEPERIODLASTYEAR vs. PARALLELPERIOD

SAMEPERIODLASTYEAR()

ส่งคืนตารางที่มีคอลัมน์วันที่ซึ่งเลื่อนกลับไปหนึ่งปีจากวันที่ในคอลัมน์ที่ระบุ ภายใต้บริบทปัจจุบัน

SAMEPERIODLASTYEAR(<dates>)

PARALLELPERIOD()

ส่งคืนตารางที่มีคอลัมน์วันที่แทนช่วงเวลาที่ขนานกับวันที่ในคอลัมน์ที่ระบุ โดยเลื่อนวันที่ไปข้างหน้าหรือย้อนกลับตามจำนวน interval ที่กำหนด ภายใต้บริบทปัจจุบัน

PARALLELPERIOD(<dates>,
    <number_of_intervals>,
    <interval>)
1 https://learn.microsoft.com/dax
การวิเคราะห์อนุกรมเวลาใน Power BI

การวิเคราะห์ window เดียวกันกับปีที่แล้ว

บางครั้งเราอาจต้องการดูว่า window เดียวกันในปีที่แล้วมีค่าเท่าไร

  • นำ window function ไปใช้กับข้อมูลในอดีต
  • ช่วยให้เห็นว่าการคำนวณเดียวกันให้ผลลัพธ์อย่างไร
  • ประมวลผลการคำนวณในหลายช่วงเวลาได้อย่างรวดเร็ว

ขั้นตอนทั่วไปสำหรับการวิเคราะห์ประเภทนี้:

  1. คำนวณ measure หรือ KPI สำคัญสำหรับปีปัจจุบัน
  2. นำการคำนวณเดียวกันไปใช้กับช่วงเวลาอื่นที่คล้ายกัน
  3. คำนวณผลต่างระหว่างค่าเหล่านั้นเพื่อวัดการเปลี่ยนแปลง
การวิเคราะห์อนุกรมเวลาใน Power BI

ตัวอย่างการวิเคราะห์ window เดียวกันกับปีที่แล้ว

การวิเคราะห์ประเภทนี้พบได้ทั่วไปในอุตสาหกรรม โดยให้ข้อมูลสำคัญ 2 จุด:

  1. องค์กรของเรามีผลการดำเนินงานบน KPI นั้นอย่างไรในบริบทของปีปัจจุบัน?
  2. ผลลัพธ์ในช่วงเวลาเดียวกันและ KPI เดียวกันของปีที่แล้วเป็นอย่างไร? มีการพัฒนาขึ้นหรือไม่?
Avg Cost = CALCULATE(
    AVERAGE(stores[cost]),
    stores[date] >= 
        DATEADD(TODAY(), -30, DAY))

LY Avg Cost = CALCULATE([Avg Cost],
    SAMEPERIODLASTYEAR(stores[date]))
การวิเคราะห์อนุกรมเวลาใน Power BI

การคำนวณการเปลี่ยนแปลง Year-over-Year

คำนวณได้อย่างแม่นยำว่าข้อมูลเปลี่ยนแปลงไปจากปีที่แล้วอย่างไร โดยใช้ window กับข้อมูลในอดีต

  • เรียกว่าการคำนวณ Year-over-Year (YoY)
  • ช่วยให้เห็นความก้าวหน้าเมื่อเทียบกับประวัติที่ผ่านมา
  • มักแสดงผลเป็นเปอร์เซ็นต์การเปลี่ยนแปลง
# Assuming current month is February

CY Jan Revenue = CALCULATE(
    SUM(sales[revenue]),
    PREVIOUSMONTH(sales[date]))

LY Jan Revenue = CALCULATE(
    [CY Jan Revenue],
    SAMEPERIODLASTYEAR(sales[date]))

Jan Revenue YoY = (
    ([CY Jan Revenue]-[LY Jan Revenue])
        / [LY Jan Revenue])
การวิเคราะห์อนุกรมเวลาใน Power BI

มาฝึกกันเถอะ!

การวิเคราะห์อนุกรมเวลาใน Power BI

Preparing Video For Download...