Мы получаем данные от датчика, который записывает и хранит такие данные, как хэши. В любое время он измеряет несколько таких вещей:
{: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 час, я хотел бы экстраполировать их, став средним значением между предыдущим и следующим часом. Кто-нибудь может помочь?