Наличие данных и истинные нули

Для обеспечения точности данных и согласованности агрегированных результатов API Google Health модернизирует способ отображения активности пользователей. Благодаря введению true zeros и on-wrist filtering , API позволяет точно различать периоды, когда пользователь находился в неподвижном состоянии, и периоды, когда он не носил устройство.

Истинные нули

Истинный ноль — это явное значение, указывающее на то, что пользователь носил устройство и активно отслеживал данные, но зафиксировал нулевое значение для определенного показателя. Например, пользователь может зафиксировать 0 шагов или 0 пройденного расстояния за 1-минутный интервал, не снимая устройства.

Исторически сложилось так, что отсутствие данных было неоднозначным. Это могло означать либо то, что пользователь вел малоподвижный образ жизни, либо то, что устройство было снято с запястья. API решает эту проблему, явно сохраняя и возвращая значение 0, когда устройство носится, но неактивно. Это позволяет четко различать периоды неподвижного ношения устройства на запястье и отсутствие данных.

Фильтрация на запястье

Фильтрация по месту ношения на запястье — это процесс определения того, носит ли пользователь устройство физически. Это позволяет API отфильтровывать посторонние данные, такие как «фантомные» шаги, записанные из-за вибрации транспортного средства, когда устройство находится в сумке.

Поддерживаемые типы данных

Следующие типы данных поддерживают поведение с истинным нулевым значением и фильтрацию на запястье:

  • Высота
  • Расстояние
  • Полы
  • Шаги
  • Общее количество калорий

Влияние на вашу заявку

Использование истинных нулей повышает точность интерпретации пробелов в данных и расчетов метрик, таких как среднесуточные значения.

Поведение в виде списка и сводки

По умолчанию API Google Health возвращает данные с запястья только для следующих типов данных:

  • Операции со списками: Возвращает данные только за периоды, когда устройство было надето. Пробелы в списке указывают на то, что устройство было снято с запястья или не синхронизировалось.
  • Операции агрегирования: Ноль в ответе означает истинное нулевое значение (пользователь носил устройство, но не двигался). Если отслеживающее устройство не носилось в течение определенного интервала, API не возвращает данных за этот период агрегирования.

Сравнение с веб-API Fitbit

Веб-API Fitbit часто возвращал данные, включая нули, даже когда устройство отслеживания не было надето. API Google Health обеспечивает более точное представление движений.

Особенность Веб-API Fitbit API Google Health
Бездействие Неопределенность Отсутствие данных может означать бездействие или отсутствие движения на запястье. Истинные нули явно указывают на бездействие во время ношения.
Пробелы в данных При наличии пробелов в данных по умолчанию могут использоваться смещения UTC. Явное хранение данных решает проблемы, связанные с часовыми поясами и гражданским временем.
Фильтрация Ограниченная фильтрация на запястье. Строгая фильтрация на запястье обеспечивает физиологическую точность.