मूविंग एवरेज

PostgreSQL में Time Series Analysis

Jasmin Ludolf

Content Developer, DataCamp

मूविंग एवरेज क्या है?

मूविंग विंडो

PostgreSQL में Time Series Analysis

मूविंग एवरेज

  • किन rows का औसत लेना है, तय करें
  • ROWS BETWEEN क्लॉज़ का उपयोग करें
  • UNBOUNDED PRECENDING AND CURRENT ROW: करंट row से सभी पिछली rows देखें
SELECT 
id,
views,
AVG(views) OVER(
    PARTITION BY id
    ORDER BY ts
    ROWS BETWEEN
    UNBOUNDED PRECEDING AND CURRENT ROW)
    AS running_avg_views
FROM dc_news_fact;
PostgreSQL में Time Series Analysis

मूविंग एवरेज निकालें

  • पाँच rows का मूविंग एवरेज निकालें:
    • ROWS BETWEEN 4 PRECEDING AND CURRENT ROW

 

(1) पिछली row

(2) पिछली row

(3) पिछली row

(4) पिछली row

(5) करंट row

PostgreSQL में Time Series Analysis

मूविंग एवरेज निकालें

SELECT
    id,
    ts,
    views,

AVG(views) OVER (
ORDER BY ts
ROWS BETWEEN 4 PRECEDING AND CURRENT ROW) AS moving_average_five
FROM dc_news_fact;
PostgreSQL में Time Series Analysis

मूविंग एवरेज: परिणाम

|   id|                 ts|views|moving_average_five|
|-----|-------------------|-----|-------------------|
|12121|2015-12-27 17:14:16| null|               null|
|12121|2015-12-27 17:34:16|   23|  23.00000000000000|
|12121|2015-12-27 17:54:16|   10|  16.50000000000000|
|12121|2015-12-27 18:14:16|    8|  13.66666666666666|
|12121|2015-12-27 18:34:16|    4|  11.25000000000000|
|12121|2015-12-27 18:54:16|    7|  10.40000000000000|
|12121|2015-12-27 19:14:16|    0| 5.8000000000000000|
...
PostgreSQL में Time Series Analysis

करंट row बिना मूविंग एवरेज निकालें

  • ROWS BETWEEN 5 PRECEDING AND 1 PRECEDING
SELECT
    stock_symbol,
    day,
    daily_avg,
    AVG(daily_avg) OVER(
        PARTITION BY stock_symbol
        ORDER BY day
        ROWS BETWEEN 5 PRECEDING AND 1 PRECEDING
        ) AS avg_prev_five
FROM daily_stock_averages
ORDER BY stock_symbol, day;
PostgreSQL में Time Series Analysis

अभ्यास करते हैं!

PostgreSQL में Time Series Analysis

Preparing Video For Download...