Analytics Space : Calc_last day coef

Расчет calc_last day coef

Формула:

tableau

IF [calc_month_from_signup_to_now] = 1 THEN DAY(DATEADD('day', -1, DATEADD('month', 1, DATETRUNC('month', {MAX([Period_end])})))) / DAY({MAX([Period_end])}) ELSEIF [calc_month_from_signup_to_now] > 1 AND [calc_last day checker] = TRUE THEN 1 ELSE 0 END

Составляющие формулы:

  1. [calc_month_from_signup_to_now] = 1
    Описание: Проверяет, является ли событие частью первого месяца после регистрации.
    Значение: Если событие относится к первому месяцу, используется дробный коэффициент для корректировки.

  2. DAY(DATEADD('day', -1, DATEADD('month', 1, DATETRUNC('month', {MAX([Period_end])}))))
    Описание: Вычисляет количество дней в последнем месяце.
    Значение:

    • DATETRUNC('month', {MAX([Period_end])}): Приводит дату конца периода к началу месяца.

    • DATEADD('month', 1, ...): Добавляет один месяц к началу месяца.

    • DATEADD('day', -1, ...): Вычитает один день, возвращая последний день месяца.

    • DAY(...): Извлекает день из последней даты (число дней в месяце).

  3. DAY({MAX([Period_end])})
    Описание: Извлекает день из максимальной даты периода ({MAX([Period_end])}).
    Значение: Показывает текущий день для максимальной даты периода.

  4. [calc_last day checker] = TRUE
    Описание: Проверяет, попадает ли событие на последний день месяца.
    Значение: Если TRUE, корректировка коэффициента равна 1.

Логика вложенных условий:

  1. Первый уровень вложенности:
    Проверяет, относится ли событие к первому месяцу:

    tableau

    Копировать код

    IF [calc_month_from_signup_to_now] = 1 THEN ... ELSEIF ... END

    Если событие относится к первому месяцу, применяется дробный коэффициент.

  2. Второй уровень вложенности:
    Проверяет, если событие происходит после первого месяца и является последним днем:

    tableau

    Копировать код

    ELSEIF [calc_month_from_signup_to_now] > 1 AND [calc_last day checker] = TRUE THEN 1

    В этом случае коэффициент устанавливается в 1.

  3. Иначе:
    Если ни одно условие не выполнено:

    tableau

    Копировать код

    ELSE 0 END

    Коэффициент устанавливается в 0.

Результат:

  • Для первого месяца: коэффициент вычисляется как дробное отношение дней.

  • Для событий после первого месяца и последнего дня месяца: коэффициент = 1.

  • Для остальных случаев: коэффициент = 0.

Интерпретация:

Метрика calc_last day coef используется для корректировки расчётов, связанных с последним днём месяца:

  1. Учитывает разницу в днях для первого месяца.

  2. Обеспечивает точный расчёт событий, происходящих в последний день месяца.

  3. Помогает анализировать корректности данных в привязке к временным интервалам.