Skip to content

Commit 19a202f

Browse files
committed
add new project getting a good night's sleep
1 parent 4f8a57a commit 19a202f

File tree

3 files changed

+376
-0
lines changed

3 files changed

+376
-0
lines changed
Loading
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"cells":[{"source":"![insomnia](insomnia.jpg)\n","metadata":{},"id":"fe7ecb8d-ad0b-40c0-b404-8b4c339d1c8b","cell_type":"markdown"},{"source":"Your client, SleepInc, has shared anonymized sleep data from their hot new sleep tracking app SleepScope. As their data science consultant, your mission is to analyze the lifestyle survey data with Python to discover relationships between exercise, gender, occupation, and sleep quality. See if you can identify patterns leading to insights on sleep quality.\n\n## 💾 The data: sleep_health_data.csv\n\nSleepInc has provided you with an anonymized dataset of sleep and lifestyle metrics for 374 individuals. This dataset contains average values for each person calculated over the past six months. The data is saved as `sleep_health_data.csv`.\n\nThe dataset includes 13 columns covering sleep duration, quality, disorders, exercise, stress, diet, demographics, and other factors related to sleep health. \n\n| Column | Description |\n|---------|----------------------------------------| \n| `Person ID` | An identifier for each individual. |\n| `Gender` | The gender of the person (Male/Female). | \n| `Age` | The age of the person in years. |\n| `Occupation` | The occupation or profession of the person. |\n| `Sleep Duration (hours)` | The average number of hours the person sleeps per day. |\n| `Quality of Sleep (scale: 1-10)` | A subjective rating of the quality of sleep, ranging from 1 to 10. |\n| `Physical Activity Level (minutes/day)` | The average number of minutes the person engages in physical activity daily. | \n| `Stress Level (scale: 1-10)` | A subjective rating of the stress level experienced by the person, ranging from 1 to 10. |\n| `BMI Category` | The BMI category of the person (e.g., Underweight, Normal, Overweight). |\n| `Blood Pressure (systolic/diastolic)` | The average blood pressure measurement of the person, indicated as systolic pressure over diastolic pressure. |\n| `Heart Rate (bpm)` | The average resting heart rate of the person in beats per minute. |\n| `Daily Steps` | The average number of steps the person takes per day. |\n| `Sleep Disorder` | The presence or absence of a sleep disorder in the person (None, Insomnia, Sleep Apnea). |","metadata":{},"id":"04929432-e076-40ef-b2a7-8e67dc7ba1a3","cell_type":"markdown"},{"source":"# Start coding here\n# Use as many cells as you need\nimport pandas as pd","metadata":{"executionCancelledAt":null,"executionTime":10,"lastExecutedAt":1730895061068,"lastScheduledRunId":null,"lastSuccessfullyExecutedCode":"# Start coding here\n# Use as many cells as you need\nimport pandas as pd","lastExecutedByKernel":"82b88fec-48ee-4ba2-bbab-f70f56c3976b"},"id":"a622f61f-54d5-468a-83b6-41f0ff404278","cell_type":"code","execution_count":128,"outputs":[]},{"source":"df = pd.read_csv('sleep_health_data.csv')\nprint(df.head())","metadata":{"executionCancelledAt":null,"executionTime":48,"lastExecutedAt":1730895061116,"lastExecutedByKernel":"82b88fec-48ee-4ba2-bbab-f70f56c3976b","lastScheduledRunId":null,"lastSuccessfullyExecutedCode":"df = pd.read_csv('sleep_health_data.csv')\nprint(df.head())","outputsMetadata":{"0":{"height":185,"type":"stream"}}},"cell_type":"code","id":"9b7f8140-c16a-4109-abf3-ea8b0bcc210f","outputs":[{"output_type":"stream","name":"stdout","text":" Person ID Gender Age ... Heart Rate Daily Steps Sleep Disorder\n0 1 Male 27 ... 77 4200 None\n1 2 Male 28 ... 75 10000 None\n2 3 Male 28 ... 75 10000 None\n3 4 Male 28 ... 85 3000 Sleep Apnea\n4 5 Male 28 ... 85 3000 Sleep Apnea\n\n[5 rows x 13 columns]\n"}],"execution_count":129},{"source":"sleep_duration = df.groupby('Occupation')['Sleep Duration'].mean()\nprint(sleep_duration.head(10))\n\nlowest_sleep_occ = df.groupby('Occupation')['Sleep Duration'].mean().sort_values().index[0]\nprint(lowest_sleep_occ)\n\nsleep_quality = df.groupby('Occupation')['Quality of Sleep'].mean()\nprint(sleep_quality.head(10))\n\nlowest_sleep_quality_occ = df.groupby('Occupation')['Quality of Sleep'].mean().sort_values().index[0]\nprint(lowest_sleep_quality_occ)\n\n\nif lowest_sleep_quality_occ == lowest_sleep_occ :\n same_occ = True\nelse:\n same_occ = False\nprint(same_occ)","metadata":{"executionCancelledAt":null,"executionTime":57,"lastExecutedAt":1730895061173,"lastExecutedByKernel":"82b88fec-48ee-4ba2-bbab-f70f56c3976b","lastScheduledRunId":null,"lastSuccessfullyExecutedCode":"sleep_duration = df.groupby('Occupation')['Sleep Duration'].mean()\nprint(sleep_duration.head(10))\n\nlowest_sleep_occ = df.groupby('Occupation')['Sleep Duration'].mean().sort_values().index[0]\nprint(lowest_sleep_occ)\n\nsleep_quality = df.groupby('Occupation')['Quality of Sleep'].mean()\nprint(sleep_quality.head(10))\n\nlowest_sleep_quality_occ = df.groupby('Occupation')['Quality of Sleep'].mean().sort_values().index[0]\nprint(lowest_sleep_quality_occ)\n\n\nif lowest_sleep_quality_occ == lowest_sleep_occ :\n same_occ = True\nelse:\n same_occ = False\nprint(same_occ)","outputsMetadata":{"0":{"height":546,"type":"stream"}},"collapsed":false,"jupyter":{"outputs_hidden":false,"source_hidden":false}},"cell_type":"code","id":"061b8187-b4c3-42f3-9efd-544b48b55979","outputs":[{"output_type":"stream","name":"stdout","text":"Occupation\nAccountant 7.113514\nDoctor 6.970423\nEngineer 7.987302\nLawyer 7.410638\nManager 6.900000\nNurse 7.063014\nSales Representative 5.900000\nSalesperson 6.403125\nScientist 6.000000\nSoftware Engineer 6.750000\nName: Sleep Duration, dtype: float64\nSales Representative\nOccupation\nAccountant 7.891892\nDoctor 6.647887\nEngineer 8.412698\nLawyer 7.893617\nManager 7.000000\nNurse 7.369863\nSales Representative 4.000000\nSalesperson 6.000000\nScientist 5.000000\nSoftware Engineer 6.500000\nName: Quality of Sleep, dtype: float64\nSales Representative\nTrue\n"}],"execution_count":130},{"source":"print(df[['BMI Category']].value_counts())\n\nlen_data = len(df)\nprint(len_data)\n\nlen_normal = len(df[df['BMI Category'] == 'Normal'])\nprint(len_normal)\n\nlen_overweight = len(df[df['BMI Category'] == 'Overweight'])\nprint(len_overweight)\n\nlen_obese = len(df[df['BMI Category'] == 'Obese'])\nprint(len_obese)\n \nlen_insomnia_normal = len(df[(df['Sleep Disorder'] == 'Insomnia') & (df['BMI Category'] == 'Normal')])\nprint(len_insomnia_normal)\n\nlen_insomnia_overweight = len(df[(df['Sleep Disorder'] == 'Insomnia') & (df['BMI Category'] == 'Overweight')])\nprint(len_insomnia_overweight)\n\nlen_insomnia_obese = len(df[(df['Sleep Disorder'] == 'Insomnia') & (df['BMI Category'] == 'Obese')])\nprint(len_insomnia_obese)\n\nratio_insomnia_normal = round(len_insomnia_normal / len_normal, 2)\nprint(ratio_insomnia_normal)\nratio_insomnia_overweight = round(len_insomnia_overweight / len_overweight, 2)\nprint(ratio_insomnia_overweight)\nratio_insomnia_obese = round(len_insomnia_obese / len_obese, 2)\nprint(ratio_insomnia_obese)\n\nbmi_insomnia_ratios = {\n \"Normal\" : ratio_insomnia_normal,\n \"Overweight\" : ratio_insomnia_overweight,\n \"Obese\" : ratio_insomnia_obese\n}\nprint(bmi_insomnia_ratios)\n\n","metadata":{"executionCancelledAt":null,"executionTime":56,"lastExecutedAt":1730895061229,"lastExecutedByKernel":"82b88fec-48ee-4ba2-bbab-f70f56c3976b","lastScheduledRunId":null,"lastSuccessfullyExecutedCode":"print(df[['BMI Category']].value_counts())\n\nlen_data = len(df)\nprint(len_data)\n\nlen_normal = len(df[df['BMI Category'] == 'Normal'])\nprint(len_normal)\n\nlen_overweight = len(df[df['BMI Category'] == 'Overweight'])\nprint(len_overweight)\n\nlen_obese = len(df[df['BMI Category'] == 'Obese'])\nprint(len_obese)\n \nlen_insomnia_normal = len(df[(df['Sleep Disorder'] == 'Insomnia') & (df['BMI Category'] == 'Normal')])\nprint(len_insomnia_normal)\n\nlen_insomnia_overweight = len(df[(df['Sleep Disorder'] == 'Insomnia') & (df['BMI Category'] == 'Overweight')])\nprint(len_insomnia_overweight)\n\nlen_insomnia_obese = len(df[(df['Sleep Disorder'] == 'Insomnia') & (df['BMI Category'] == 'Obese')])\nprint(len_insomnia_obese)\n\nratio_insomnia_normal = round(len_insomnia_normal / len_normal, 2)\nprint(ratio_insomnia_normal)\nratio_insomnia_overweight = round(len_insomnia_overweight / len_overweight, 2)\nprint(ratio_insomnia_overweight)\nratio_insomnia_obese = round(len_insomnia_obese / len_obese, 2)\nprint(ratio_insomnia_obese)\n\nbmi_insomnia_ratios = {\n \"Normal\" : ratio_insomnia_normal,\n \"Overweight\" : ratio_insomnia_overweight,\n \"Obese\" : ratio_insomnia_obese\n}\nprint(bmi_insomnia_ratios)\n\n","outputsMetadata":{"0":{"height":355,"type":"stream"}}},"cell_type":"code","id":"fcc97a65-3466-4981-b88c-55a5f9457bb7","outputs":[{"output_type":"stream","name":"stdout","text":"BMI Category\nNormal 216\nOverweight 148\nObese 10\ndtype: int64\n374\n216\n148\n10\n9\n64\n4\n0.04\n0.43\n0.4\n{'Normal': 0.04, 'Overweight': 0.43, 'Obese': 0.4}\n"}],"execution_count":131}],"metadata":{"colab":{"name":"Welcome to DataCamp Workspaces.ipynb","provenance":[]},"kernelspec":{"display_name":"Python 3 (ipykernel)","language":"python","name":"python3"},"language_info":{"codemirror_mode":{"name":"ipython","version":3},"file_extension":".py","mimetype":"text/x-python","name":"python","nbconvert_exporter":"python","pygments_lexer":"ipython3","version":"3.8.10"}},"nbformat":4,"nbformat_minor":5}

0 commit comments

Comments
 (0)