172 похожих чатов

Всем привет! Есть табличка: id, date_time (timestamp), total (number). date_time ежечасный

(2022-01-01 00:00:00, 2022-01-01 01:00:00, 2022-01-01 02:00:00... 2022-01-01 23:00:00).
Я хочу посчитать скользящую среднюю (moving average) для 7 и 30 дней.
В интернете нашел, как считать, но там примеры по дням. У меня по часам.
Как собрать среднее для дня, если он разбит по часам (и видимо надо запихнуть это сё в новую таблицу и уже на её основе высчитывать среднее).
Я начал что-то пробовать здесь https://dbfiddle.uk/?rdbms=postgres_14&fiddle=7babd29cbd6924fb6a58914edbcf44ee, спасибо
И вот, где я нашел, как считать: https://ubiq.co/database-blog/calculate-moving-average-postgresql/#:~:text=To%20calculate%20moving%20average%20in%20PostgreSQL%2C%20we%20first%20sort%20the,row%20and%20preceding%204%20rows.

15 ответов

31 просмотр

какая разница часы или дни?

Me👀- Автор вопроса
central hardware
какая разница часы или дни?

Дни состоят из часов. Для дня средним будет сумма всех часов на количество

Me👀
Дни состоят из часов. Для дня средним будет сумма ...

скользящая средняя это математическая функция которая я подозреваю вообще ниего не знает кроме чисел

central hardware
скользящая средняя это математическая функция кото...

если прочитаете определение там ничего не будет сказано про что обозначают числа

Me👀- Автор вопроса
central hardware
если прочитаете определение там ничего не будет ск...

Да, но ей ведь надо дать правильные числа ) Мой первый шаг это посчитать среднюю для каждого дня. Я пока не могу понять ,как это оформить в новую таблицу. Для одного дня это будет просто, что-то вроде SELECT AVG(total) FROM table WHERE date_time = '2022-01-01' и записать результат в новую таблицу и так для каждого дня

Me👀
Да, но ей ведь надо дать правильные числа ) Мой пе...

если вам нужна средняя по часам то зачем вы будете считать обычное среднее для дня?

Me👀- Автор вопроса
central hardware
если вам нужна средняя по часам то зачем вы будете...

Мне нужно посчитать среднее для 7 и 30 дней. А дни у меня разбиты на часы.

Me👀
Мне нужно посчитать среднее для 7 и 30 дней. А дни...

7 и 30 дней это промежуток но не размерность (часы, Дни)

Me👀- Автор вопроса
central hardware
7 и 30 дней это промежуток но не размерность (часы...

Я могу ошибаться. Изначально я решил эту задачу на js, где я просто в цикле собирал среднее для каждого дня (сумма для всех часов деленная на их количество). Получал массив средних по дням (тоже просто числа). Потом этот массив использовал для подсчета простого среднего для 30 дней. Сейчас я понял ,что на js гонять такие массивы данных затратно будет, и хочу перенести логику на сторону postgres :)

Me👀
Я могу ошибаться. Изначально я решил эту задачу на...

так вам нужно скольязее среднее или какое? одно число ИМХО не может быть скользящих средним

Me👀- Автор вопроса
central hardware
так вам нужно скольязее среднее или какое? одно чи...

Да, неточность. Нужно скользящее по дням скользящее. А дни я собирал обычным усреднением часов

Me👀
Да, неточность. Нужно скользящее по дням скользяще...

все равно фигня какая то, если вы хотите получить одно число то у вам и нужно самое обычное среднее посчитать. просто просумировать все часы и поделить на их количество

Me👀- Автор вопроса
central hardware
все равно фигня какая то, если вы хотите получить ...

Одно число не хочу. Каждое последующее зависит от предыдущего. В итоге я получаю (в js) массив день-значение и могу, например, нарисовать линию)

Me👀
Одно число не хочу. Каждое последующее зависит от ...

тогда почему бы не посчитать по часам? формулировка задачи да в днях но в часах никто такие промежутки никогда не указывает

Me👀- Автор вопроса
central hardware
тогда почему бы не посчитать по часам? формулировк...

я собираю среднее дня из часов. И далее у меня везде данные по дням. 7 дней, 30 дней, 10 дней. Никто не просит среднее по часам

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Карта сайта