Определение и реализация алгоритма трендов в Django

У меня есть приложение Django, в котором мне нужно реализовать простой алгоритм определения тенденций / ранжирования. Я очень заблудился как:

У меня есть две модели: Book и Reader . Каждую ночь в мою базу данных добавляются новые книги. Количество читателей для каждой книги также обновляется каждую ночь, т.е. одна книга будет иметь несколько записей статистики читателей (по одной записи на каждый день).

За определенный период (за прошлую неделю, за последний месяц или за последний год) я хотел бы перечислить самые популярные книги, какой алгоритм мне следует использовать для этого?

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

Я нашел одну статью, на которую есть ссылка в другом сообщении SO , в котором показано, как они рассчитывают трендовые статьи в Википедии , но сообщение показывает только то, как рассчитывается текущий тренд.

Как кто-то указал на SO, это очень простой алгоритм базового тренда, который вычисляет только наклон между двумя точками данных, поэтому я предполагаю, что он показывает тенденцию между вчерашним и сегодняшним днем.

Я не ищу сверхсложный алгоритм трендов вроде тех, что используются в Hacker News, Reddit и т. Д.

У меня есть только две оси данных: количество читателей и дата.

Есть идеи, что и как мне реализовать.Для тех, кто никогда не работал с чем-либо связанным со статистикой / алгоритмами, это кажется очень сложной задачей.

Заранее всем спасибо.

11
задан Mridang Agarwalla 14 February 2012 в 20:39
поделиться