поэтому у меня есть эта ежедневная таблица, которая содержит количество посетителей в магазине, каждый день.
Столбцы моих таблиц:
- Дата
- Магазин
- Number_of_Visitors
- Просмотры: количество просмотров объявлений магазинов.
Поэтому я сначала начал с агрегирования своей таблицы в недельную таблицу, чтобы можно было рассчитать дисперсиюмежду неделей и следующей.
Вот как я определил дисперсию:
Variance = `Number Of Visitors in WEEK N+1 / Number of Visitors in WEEK N
Я написал следующий запрос, чтобы сделать это (новая таблица называется: еженедельно)
SELECT
year_week,
min(date) as date,
Store,
SUM(Number_Of_Visitors) AS TOTAL_VISITORS
FROM (
SELECT
*,
CONCAT(cast((extract(YEAR from date)), LPAD(cast((extract(WEEK from date)) as string), 2, '0') ) AS year_week
FROM `my-project`)
GROUP BY
year_week, Store
ORDER BY year_week
Затем по порядкудля вычисления дисперсии я также использовал следующий запрос:
SELECT
base.*,
((base.TOTAL_VISITORS-lw.TOTAL_VISITORS)/lw.TOTAL_VISITORS) AS VAR_FF,
FROM
`weekly` base
JOIN (
SELECT
* EXCEPT (date),
DATE_ADD(DATE(TIMESTAMP(date)), INTERVAL 1 Week)AS n_date
FROM
`weekly` ) lw
ON
base.date = lw.n_date
AND base.Store= lw.Store
Когда я строю график дисперсии (VAR_FF) с использованием Data Studio, и я получаю следующий график, который, кажется, несмысл с высоким пиком в середине;