Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mooc-rr
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
af1cc7b7e34a79371c7a7b8d0cf8669e
mooc-rr
Commits
846058e9
Commit
846058e9
authored
Feb 12, 2025
by
af1cc7b7e34a79371c7a7b8d0cf8669e
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
exercice done
parent
e352129c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
336 additions
and
3 deletions
+336
-3
exercice.ipynb
module2/exo4/exercice.ipynb
+293
-3
step_by_day.csv
module2/exo4/step_by_day.csv
+43
-0
No files found.
module2/exo4/exercice.ipynb
View file @
846058e9
{
{
"cells": [],
"cells": [
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import datetime"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [],
"source": [
"data = pd.read_csv(\"step_by_day.csv\", parse_dates=['date'])"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'pandas.core.frame.DataFrame'>\n",
"RangeIndex: 42 entries, 0 to 41\n",
"Data columns (total 2 columns):\n",
"date 42 non-null datetime64[ns]\n",
"nb_step 42 non-null int64\n",
"dtypes: datetime64[ns](1), int64(1)\n",
"memory usage: 752.0 bytes\n"
]
}
],
"source": [
"data.info()"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>nb_step</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>42.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>6861.261905</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>4026.120011</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>14.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>4923.750000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>6860.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>8853.250000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>16202.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" nb_step\n",
"count 42.000000\n",
"mean 6861.261905\n",
"std 4026.120011\n",
"min 14.000000\n",
"25% 4923.750000\n",
"50% 6860.000000\n",
"75% 8853.250000\n",
"max 16202.000000"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data.describe()"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>nb_step</th>\n",
" </tr>\n",
" <tr>\n",
" <th>date</th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Monday</th>\n",
" <td>7781.666667</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Tuesday</th>\n",
" <td>8011.166667</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Wednesday</th>\n",
" <td>6266.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Thursday</th>\n",
" <td>7581.333333</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Friday</th>\n",
" <td>11493.833333</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Saturday</th>\n",
" <td>4788.833333</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Sunday</th>\n",
" <td>2106.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" nb_step\n",
"date \n",
"Monday 7781.666667\n",
"Tuesday 8011.166667\n",
"Wednesday 6266.000000\n",
"Thursday 7581.333333\n",
"Friday 11493.833333\n",
"Saturday 4788.833333\n",
"Sunday 2106.000000"
]
},
"execution_count": 47,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"days = ['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday', 'Sunday']\n",
"data.groupby(data['date'].dt.weekday_name).mean().reindex(days)"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x7f71f2bbd748>]"
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"%matplotlib inline\n",
"from matplotlib import pyplot as plt\n",
"\n",
"plt.plot(data[\"date\"], data[\"nb_step\"])"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<BarContainer object of 7 artists>"
]
},
"execution_count": 48,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"%matplotlib inline\n",
"from matplotlib import pyplot as plt\n",
"\n",
"x = days\n",
"y = list(data.groupby(data['date'].dt.weekday_name).mean().reindex(days)[\"nb_step\"])\n",
"\n",
"plt.bar(x,y)"
]
}
],
"metadata": {
"metadata": {
"kernelspec": {
"kernelspec": {
"display_name": "Python 3",
"display_name": "Python 3",
...
@@ -16,10 +307,9 @@
...
@@ -16,10 +307,9 @@
"name": "python",
"name": "python",
"nbconvert_exporter": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"pygments_lexer": "ipython3",
"version": "3.6.
3
"
"version": "3.6.
4
"
}
}
},
},
"nbformat": 4,
"nbformat": 4,
"nbformat_minor": 2
"nbformat_minor": 2
}
}
module2/exo4/step_by_day.csv
0 → 100644
View file @
846058e9
date,nb_step
2025-02-12,5361
2025-02-11,7480
2025-02-10,8605
2025-02-09,1228
2025-02-08,7924
2025-02-07,4241
2025-02-06,12601
2025-02-05,6544
2025-02-04,5907
2025-02-03,4808
2025-02-02,1104
2025-02-01,4847
2025-01-31,14556
2025-01-30,8895
2025-01-29,9392
2025-01-28,14227
2025-01-27,11821
2025-01-26,1292
2025-01-25,5301
2025-01-24,16202
2025-01-23,8728
2025-01-22,5188
2025-01-21,5154
2025-01-20,5424
2025-01-19,1956
2025-01-18,286
2025-01-17,10862
2025-01-16,7689
2025-01-15,5505
2025-01-14,7176
2025-01-13,8193
2025-01-12,1093
2025-01-11,9369
2025-01-10,13196
2025-01-09,7561
2025-01-08,5606
2025-01-07,8123
2025-01-06,7839
2025-01-05,5963
2025-01-04,1006
2025-01-03,9906
2025-01-02,14
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment