From b8772f514c2c82a115825ce832268236a179223c Mon Sep 17 00:00:00 2001 From: Arshmah Date: Thu, 31 Oct 2024 13:55:26 +0530 Subject: [PATCH] add a small streamlit application --- BMI_and_BMR_Calculator/1_Home.py | 52 +++++++++++++++ BMI_and_BMR_Calculator/README.md | 32 ++++++++++ BMI_and_BMR_Calculator/pages/2_Calculate.py | 66 ++++++++++++++++++++ BMI_and_BMR_Calculator/ranges.png | Bin 0 -> 37785 bytes 4 files changed, 150 insertions(+) create mode 100644 BMI_and_BMR_Calculator/1_Home.py create mode 100644 BMI_and_BMR_Calculator/README.md create mode 100644 BMI_and_BMR_Calculator/pages/2_Calculate.py create mode 100644 BMI_and_BMR_Calculator/ranges.png diff --git a/BMI_and_BMR_Calculator/1_Home.py b/BMI_and_BMR_Calculator/1_Home.py new file mode 100644 index 00000000..58ae065e --- /dev/null +++ b/BMI_and_BMR_Calculator/1_Home.py @@ -0,0 +1,52 @@ +import streamlit as st +import pandas as pd +from pathlib import Path +import pickle + + +layout ='centered' +page_title = 'BMI and BMR Calculator' + +st.set_page_config(page_title=page_title, layout=layout) +st.header(page_title) + +st.subheader('Body Mass Index (BMI)') + +st.write('''BMI is a measurement of a person's leanness +or corpulence based on their height and weight, and +is intended to quantify tissue mass. +It is widely used as a general indicator of whether a person has a healthy body weight for their height. Specifically, the value obtained from the calculation of BMI is used to categorize whether a person is underweight, normal weight, overweight, or obese depending on what range the value falls between. These ranges of BMI vary based on factors such as region and age, and are sometimes further divided into subcategories such as severely underweight or very severely obese. Being overweight or underweight can have significant health effects, so while BMI is an imperfect measure of healthy body weight, it is a useful indicator of +whether any additional testing or action is required''') + + +st.subheader('BMI Formula') +st.write(''' + BMI in the International System of Units (SI)\n\n + \t\t\t BMI = Mass(Kg)/(Height(m)^2) +''') + + + + +st.subheader('Basal Metabolic Rate (BMR)') + +st.write(''' +The basal metabolic rate (BMR) is the amount of energy needed while resting in +a temperate environment when the digestive system is inactive. It is the +equivalent of figuring out how much gas an idle car consumes while parked. +In such a state, energy will be used only to maintain vital organs, which +include the heart, brain, kidneys, nervous system, intestines, liver, lungs, +sex organs, muscles, and skin. +''') + +st.write(''' +\n Mifflin-St Jeor Equation:\n +\nFor men: BMR = 10W + 6.25H - 5A + 5\n +For women: BMR = 10W + 6.25H - 5A - 161 +''') + + + +st.write("\n\nTo measure your BMI and BMR go to the calculate page\n") + + diff --git a/BMI_and_BMR_Calculator/README.md b/BMI_and_BMR_Calculator/README.md new file mode 100644 index 00000000..e09f821a --- /dev/null +++ b/BMI_and_BMR_Calculator/README.md @@ -0,0 +1,32 @@ + +# BMI and BMR Calculator + +This Streamlit application calculates BMI and BMR for adults. Users input their height, weight, age, and gender to get their BMI, BMR, and a short analysis of their weight category, including insights on whether they are underweight, normal weight, overweight, or obese. + + +## Run the application + +Download the repo + +```bash + git clone https://github.com/gitarshmah/Awesome-Python-Scripts.git +``` + +Go to the project directory + +```bash + cd BMI_and_BMR_Calculator/ +``` + +Install Streamlit + +```bash + pip install streamlit +``` + +Run the app + +```bash + streamlit run 1_Home.py +``` + diff --git a/BMI_and_BMR_Calculator/pages/2_Calculate.py b/BMI_and_BMR_Calculator/pages/2_Calculate.py new file mode 100644 index 00000000..2a74b090 --- /dev/null +++ b/BMI_and_BMR_Calculator/pages/2_Calculate.py @@ -0,0 +1,66 @@ +import streamlit as st + +st.subheader('Calculate BMI(Body Mass Index) \n\n') +st.write("Have a look at the chart displaying the different BMI ranges according to their respective weight categories.\n\n") +st.image('ranges.png') + +height = st.number_input("Enter your height in(cms): ", min_value=100) +weight = st.number_input("Enter your weight in kgs: ", min_value=1) +def bmi(height, weight): + value = weight/((height/100)**2) + return value*(1.0) +def category(person_bmi): + if person_bmi<16: + return ("Severe Thinness") + elif person_bmi>=16 and person_bmi<17: + return ("Moderate Thinness") + elif person_bmi>=17 and person_bmi<18.5: + return ("Mild Thinness") + + elif person_bmi>=18.5 and person_bmi<25: + return ("Normal") + + + elif person_bmi>=25 and person_bmi<30: + return ("Overweight") + + + elif person_bmi>=30 and person_bmi<35: + return ("Obese Class I") + + elif person_bmi>=35 and person_bmi<40: + return ("Obese Class II") + + else: + return ("Obese Class III") + + +person_bmi = bmi(height, weight) +st.write("Your BMI is "+str(person_bmi)+' kg/m2') +st.write("You lies under the category of " + category(person_bmi)) + + +st.subheader('\n\nCalculate BMR(Basal Metabolic Rate)\n\n') +age = st.number_input("Enter your age: ") +gender = st.text_input("Enter your gender Either('M' or 'F'): ") +if gender == 'M': + bmr = (10 * weight) + (6.25 * height) - (5 * age) + 5 +else: + bmr = (10 * weight) + (6.25 * height) - (5 * age) - 161 + +lifestyle = st.selectbox('Choose the lifestyle', options=['sedentary (little or no exercise)', 'lightly active (light exercise or sports 1-3 days/week)', 'moderately active (moderate exercise 3-5 days/week)', 'very active (hard exercise 6-7 days/week)','super active (very hard exercise and a physical job)']) + +if lifestyle == 'sedentary (little or no exercise)': + bmr = bmr*1.2 +elif lifestyle == 'lightly active (light exercise or sports 1-3 days/week)': + bmr = bmr*1.375 +elif lifestyle == 'moderately active (moderate exercise 3-5 days/week)': + bmr = bmr*1.55 +elif lifestyle == 'very active (hard exercise 6-7 days/week)': + bmr = bmr*1.725 +else: + bmr =bmr*1.9 + +st.text(f'Your daily calories consumption is {bmr} kcal per day') + + diff --git a/BMI_and_BMR_Calculator/ranges.png b/BMI_and_BMR_Calculator/ranges.png new file mode 100644 index 0000000000000000000000000000000000000000..63d4c3172523b3678ab3e89000cd27f4285dce48 GIT binary patch literal 37785 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μQbzTTXQjZR$!bzX@vQx{!X~RmMWGr$Z`^%WY>ZS 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 YCOt|?y~Vz%gW$fjH4I)>zp#e=AA%_e^Z)<= literal 0 HcmV?d00001