Мы получаем наши данные от датчика, который записывает и хранит данные в виде хэшей.
В любое время он измеряет несколько таких вещей:
{:temperature => 30, :pression => 100, :recorded_at => 14:34:23}
{:temperature => 30, :pression => 101, :recorded_at => 14:34:53}
{:temperature => 31, :pression => 102, :recorded_at => 14:34:24}
{:temperature => 30, :pression => 101, :recorded_at => 14:34:55}
{:temperature => 30, :pression => 102, :recorded_at => 14:34:25}
{:temperature => 31, :pression => 101, :recorded_at => 14:34:56}
Нам нужно иметь возможность экспортировать эти данные в формате JSON, но у нас слишком много данных (датчик регистрирует каждые 30 секунд), и нам необходимо удалить некоторые данные. В идеале мы хотели бы экспортировать 1 такт в час за последние 24 часа, поэтому у нас есть что-то вроде
{0 => {:temperature => 30, :pression => 100}, 1 => {:temperature => 30, :pression => 100}, 2 => {:temperature => 30, :pression => 100}, 3 => {:temperature => 30, :pression => 100}, 4 => {:temperature => 30, :pression => 100}}
Для каждого часа температура является средним значением всех температур, измеренных в течение этого часа.
Кроме того, если по какой-либо причине некоторые данные отсутствуют в течение 1 часа, я бы хотел экстраполировать их на среднее значение между предыдущим и следующим часом. Кто-нибудь может помочь?