Хотите достичь своих целей в фитнесе, например, похудеть или нарастить мышечную массу? Все дело в знании того, сколько калорий вы сжигаете в день, что называется вашим общим ежедневным расходом энергии (TDEE).
Думайте о TDEE как о золотом числе, которое определяет ваш выбор продуктов питания и тренировок. Вы должны знать это, чтобы выяснить, сколько нужно есть, если вы хотите сохранить вес, набрать несколько фунтов или похудеть.
Теперь есть множество онлайн-инструментов, которые могут угадать ваш TDEE, но получение данных из вашего собственного тела даст вам реальную сделку.
Я понимаю, вычисление этих чисел может быть утомительным, особенно если математика вам не по душе. Но эй, Google Fitness API поможет вам в этом!
В этом сообщении блога мы покажем вам, как использовать Google Fitness API для расчета вашего TDEE и отслеживания вашего прогресса с течением времени.
Использование Google Fitness API
Изучили основы TDEE? Отлично, давайте углубимся в то, как мы можем получить сенсацию с помощью Google Fitness API. Этот отличный инструмент позволяет программистам получать данные из Google Fit — приложения, которое собирает информацию о здоровье с вашего телефона, умных часов и других приложений.
Чтобы начать работу с Google Fitness API, сначала перейдите в Google Cloud Console и включите Fitness API. Затем нам нужно создать учетные данные для нашего проекта, чтобы мы могли подключиться к API.
После того, как мы все настроим, все дело в использовании API, чтобы получить некоторые сочные данные Google Fit. Мы говорим о весе и статистике еды, что поможет нам точно рассчитать TDEE.
Получение и анализ данных
Теперь, когда у нас настроен и готов к работе наш Google Fitness API, пришло время начать извлекать и анализировать данные, необходимые для расчета нашего TDEE. Первый шаг — сделать запрос к API, запросив данные о весе и питании за последние 30 дней.
Вот пример того, как может выглядеть этот запрос:
Функция google.auth.fromJSON
используется для создания объекта аутентификации, который можно использовать для выполнения запросов к Google Fitness API. Затем мы устанавливаем области, для которых мы хотим запросить данные, в данном случае это https://www.googleapis.com/auth/fitness.nutrition.read
и https://www.googleapis.com/auth/fitness.body.read
. После этого мы устанавливаем дату начала и дату окончания для нашего запроса, то есть 30 дней назад и сегодня соответственно. Наконец, мы вызываем функцию fetchDataForDataSource
три раза: один раз для данных о весе, один раз для данных о процентном содержании жира и один раз для данных о питании.
Но что делает функция fetchDataForDataSource
? Давайте взглянем:
С помощью фитнес-API от googleapis
мы можем делать запросы к Google Fitness API. В этом случае мы используем метод users.dataSources.datasets.get
для получения данных для определенного источника данных. Мы передаем userId
как me
, чтобы получить данные для текущего пользователя, dataSourceId
, для которого мы хотим получить данные, и datasetId
, которое представляет собой комбинацию времени начала и окончания в наносекундах. Наконец, мы передаем объект аутентификации, который мы создали ранее.
Агрегирование данных
Давайте посмотрим на данные, которые мы получили от Google Fitness API:
Масса
Процент жира
Питание
Как видите, данные представлены в формате, с которым не очень удобно работать. Нам нужно проанализировать эти данные и агрегировать их в пригодный для использования формат.
После использования этих загадочных функций наши данные будут выглядеть так:
Хорошо, теперь давайте напишем функции, которые делают это волшебство, или лучше попросим ChatGPT сделать это за нас.
И для агрегации данных о питании:
Последнее, что нужно сделать, это объединить эти 3 массива в один и отсортировать их по дате.
Хорошо, пора использовать эти данные, чтобы получить представление. На самом деле, нам нужно еще кое-что, прежде чем мы сможем это сделать.
Мышечная масса и жировой состав тела
Прежде чем погрузиться в расчеты, нам нужно понять, как мышцы и жир распределяются в организме.
Я хотел выяснить, сколько калорий содержится в 1 кг мышц и 1 кг жира, поэтому я начал искать книги в Google Книгах, чтобы узнать точный состав мышечной и жировой ткани, и я действительно нашел некоторую информацию о Диетологе. Еда, питание и оптимальное здоровье Роберта Уайлдмана».
Но мне по-прежнему нужно было знать, сколько энергии требуется для наращивания 1 кг мышц и 1 кг жира, поэтому я спросил ChatGPT.
Привет. Каков точный состав в процентах на 1 кг скелетных мышц и 1 кг жировой ткани? Также укажите источник информации. Пожалуйста, дайте мне краткий ответ, спасибо.
Конечно! Вот краткий ответ для общего состава 1 кг скелетных мышц и 1 кг жировой ткани:
Скелетные мышцы (1 кг):
- Вода: ~75%
- Белки: ~20%
- Жиры: ~5%
- Другое (минералы, гликоген и т. д.): следовые количества
Жировая ткань (1 кг):
- Липиды: ~80–90%
- Вода: ~10–20%
- Белки: ~2%
- Другое (минералы и т. д.): следовые количества
Обратите внимание, что эти значения могут варьироваться в зависимости от таких факторов, как возраст, пол, диета и общее состояние здоровья. Информация основана на общенаучном понимании и может быть найдена в различных учебниках по физиологии и анатомии человека, таких как «Анатомия и физиология человека» Элейн Н. Мариеб и Кати Хоэн.
Какова эффективность синтеза в процентах для создания 1 грамма мышечного белка и 1 грамма липидов? Также укажите источник информации. Пожалуйста, дайте мне краткий ответ, спасибо.
Эффективность синтеза мышечного белка и липидов широко варьируется в зависимости от таких факторов, как вид, диета, возраст и состояние здоровья. Однако можно дать общую оценку:
- Для мышечного белка эффективность часто составляет около 20–25%. Это означает, что только около 20–25% потребляемых аминокислот включаются в мышечный белок.
- Для липидов эффективность преобразования пищевых жиров может быть выше, около 90–95%.
Эти цифры являются приблизительными и могут значительно различаться. Информация получена из общих знаний о биохимии питания и может быть найдена в таких учебниках, как «Биохимические, физиологические и молекулярные аспекты питания человека» Марты Х. Стипанюк и Мари А. Кодилл, а также в научных статьях по этому вопросу. Всегда консультируйтесь с конкретными исследователями или профессионалами в этой области для получения более точной информации с учетом конкретной ситуации.
Прохладный. Давайте теперь займемся математикой!
Расчет мышц
Теперь, когда мы знаем, что килограмм мышц состоит из 20% белка и 5% жира. 1 г белка содержит 4 калории, а 1 г жира содержит 9 калорий, это означает, что 1 кг мышц содержит 800 калорий из белка и 450 из жира, всего 1250 калорий.
Расчет жира
Что касается жира, килограмм состоит из 85% липидов и 2% белка. В 1 г липидов содержится 9 калорий, а в 1 г белка — 4 калории, это означает, что 1 кг жира содержит 7650 калорий из липидов и 80 калорий из белков, всего 7730 калорий.
Стоимость синтеза
Когда дело доходит до создания основных компонентов нашего тела, эффективность разных веществ различна.
Для белков эффективность нашего организма составляет около ~ 23%. Это означает, что на каждый 1 г белка, который содержит 4 ккал, нам нужно около 17 ккал. Подумайте об этом так: 4 ккал идут на настоящие аминокислоты в белке, а остальные 13 ккал — это энергия, израсходованная в процессе построения.
Теперь, липиды - другая история. Наше тело здесь немного эффективнее, около 93%. Таким образом, для производства 1 г липидов, который содержит 9 ккал, требуется всего около 10 ккал. Это 9 ккал для аминокислот в липидах и всего 1 ккал для синтеза.
Расчет стоимости энергии
Итак, давайте обдумаем все эти цифры и посмотрим, что они означают для затрат энергии на наращивание мышечной массы и жира.
Для мышц у нас есть 1 кг с 200 г белка и 50 г липидов. Поскольку для производства 1 г белка требуется около 17 ккал, а для производства 1 г липидов требуется около 10 ккал, общие энергетические затраты на 1 кг мышц составляют:
- Белки: 200 х 17 = 3400 ккал
- Жир: 50 х 10 = 500 ккал.
- Итого: 3400 + 500 = 3900 ккал
Теперь, для жира в 1 кг, содержащего 850 г липидов и 20 г белка, общая стоимость энергии составляет:
- Липиды: 850 х 10 = 8500 ккал.
- Белки: 20 х 17 = 340 ккал.
- Итого: 8500 + 340 = 8840 ккал
Так вот! С этими числами я добавлю в свой код следующие consts
:
Напоминаем, что все это приблизительные значения, а фактические цифры могут варьироваться в зависимости от состава вашего тела, диеты и других факторов. Кроме того, я не врач и не диетолог, поэтому, пожалуйста, не воспринимайте это как медицинский совет.
Расчет TDEE
Теперь, когда у нас есть проанализированные данные о весе и процентном содержании жира и они объединены в пригодный для использования формат, мы можем начать вычислять наш TDEE.
Чтобы рассчитать TDEE, выполните следующие действия:
1 — Получите общее количество калорий, потребленных за 30-дневный период. 2 — Рассчитайте разницу в весе между началом и концом 30-дневного периода. 3 — Преобразуйте разницу в весе в калории, умножив ее на количество набранных/потерянных мышц/жира. 4 — Вычтите результат шага 3 из общего количества калорий, потребленных за 30-дневный период. 5 — Разделите результат шага 4 на 30, чтобы получить среднесуточное потребление калорий, которое должно быть вашим TDEE.
Вот код для расчета TDEE и многого другого с помощью кода:
Эта функция возвращает строку с подробной информацией за 30-дневный период, включая количество дней, TDEE, среднесуточное потребление калорий, белков, углеводов, жиров и клетчатки, а также вес, содержание жира, нежировых и нежировых продуктов. разница в процентах жира между началом и концом периода.
Что касается недостающих функций accumulateData
, calculateWeightDifference
и calculateTDEE
, то вот они:
Как видите, функция calculateStatistics
вызывает функцию accumulateData
, чтобы получить общее количество калорий, белков, углеводов, жиров и клетчатки, потребленных в течение 30-дневного периода, а также начальный и конечный вес и процентное содержание жира.
Затем он вызывает функцию calculateWeightDifference
для расчета разницы в весе, жире, обезжиренном и процентном содержании жира между началом и концом периода.
Наконец, он вызывает функцию calculateTDEE
для вычисления TDEE.
Отправить данные в Telegram
После того, как вы рассчитали свой TDEE, вы можете поделиться этой информацией с другими, например с личным тренером или другом. Один из простых способов сделать это — отправить данные в групповой чат Telegram. Это можно сделать с помощью Telegram Bot API.
Вот пример фрагмента кода, который отправляет результат TDEE в групповой чат Telegram:
https://gist.github.com/blopa/bded053743174eae5d48660c46227b6e
В этом коде мы используем пакет node-fetch
для выполнения HTTP-запроса POST к методу sendMessage Telegram Bot API. Мы передаем результат TDEE в виде текстового поля в теле запроса вместе с chat_id группы Telegram, в которую мы хотим отправить сообщение. Мы также устанавливаем для поля parse_mode
значение markdown
, чтобы включить форматирование в сообщении.
Обратите внимание, что для использования этого кода вам необходимо установить соответствующие значения переменных среды TELEGRAM_BOT_ID
и TELEGRAM_GROUP_ID
.
Бонус
Вы можете скопировать текст, полученный из этого скрипта, и отправить его в ChatGPT для получения дополнительной информации 👀.
Привет. Что вы думаете об этих данных из моего личного отслеживания здоровья за последние 30 дней или около того? Можете ли вы дать мне краткое и четкое представление о том, что я делаю хорошо, а что мне следует улучшить? Спасибо
‹- Мои текстовые данные -›
Конечно! Вот краткий анализ на основе предоставленных вами данных:
Что вы делаете хорошо: баланс калорий. Среднее потребление калорий очень близко к общему дневному расходу энергии (TDEE), что говорит о том, что вы эффективно поддерживаете свой вес. Потеря веса: вы потеряли 0,80 кг за последний месяц, что является здоровой и устойчивой скоростью потери веса, если это ваша цель. Потребление белка. Среднее потребление белка, по-видимому, находится в хорошем диапазоне, особенно если вы занимаетесь физическими упражнениями, требующими восстановления и роста мышц.
Области, требующие улучшения: Увеличение процентного содержания жира. Увеличение процентного содержания жира и жировой массы может вызвать беспокойство, если вы стремитесь уменьшить жировые отложения. Это может быть связано с типом продуктов, которые вы потребляете, или с балансом макронутриентов. Потребление клетчатки: среднее потребление клетчатки немного ниже нормы. Увеличение потребления клетчатки за счет потребления большего количества цельнозерновых продуктов, фруктов и овощей может помочь пищеварению и контролю веса.
Помните, что эти сведения основаны на предоставленных данных и общих рекомендациях. Индивидуальные потребности могут сильно различаться, поэтому всегда полезно проконсультироваться с поставщиком медицинских услуг или специалистом по питанию для получения индивидуального совета.
Заключение
Вот и все, теперь вы всегда будете точно знать, какой у вас TDEE. Вы можете использовать эту информацию, чтобы скорректировать свою диету и программу упражнений для достижения своих целей в фитнесе. Вы даже можете включить этот скрипт в рабочий процесс GitHub Actions, чтобы запускать его автоматически каждый день и отправлять результаты в групповой чат Telegram.
Если вы хотите увидеть полный код, вы можете найти его здесь.
Я надеюсь, что вы нашли эту статью полезной. Если у вас есть какие-либо вопросы или комментарии, не стесняйтесь обратиться или оставить свой отзыв в разделе комментариев ниже.
Первоначально опубликовано на https://pablo.gg.
На простом английском
Спасибо, что являетесь частью нашего сообщества! Прежде чем уйти:
- Обязательно аплодируйте и подпишитесь на автора! 👏
- Вы можете найти еще больше контента на PlainEnglish.io 🚀
- Подпишитесь на нашу бесплатную еженедельную рассылку. 🗞️
- Подпишитесь на нас в Twitter, LinkedIn, YouTube >» и Discord.