Skip to content

Instantly share code, notes, and snippets.

@cristianpb
Created February 16, 2021 09:08
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cristianpb/219069facc7a29e8bd2f4d9768096513 to your computer and use it in GitHub Desktop.
Save cristianpb/219069facc7a29e8bd2f4d9768096513 to your computer and use it in GitHub Desktop.
Withings data analysis notebook
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"from matplotlib import dates\n",
"import seaborn as sns\n",
"import numpy as np\n",
"import json\n",
"from IPython.display import HTML"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"@plt.FuncFormatter\n",
"def fake_dates(x, pos):\n",
" \"\"\" Custom formater to turn floats into e.g., 2016-05-08\"\"\"\n",
" return dates.num2date(x).strftime('%Y-%m-%d')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Withings data"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df = pd.read_csv('data/aggregates_steps.csv', parse_dates=[0])"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(839, 2)\n"
]
},
{
"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>date</th>\n",
" <th>value</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2018-09-30</td>\n",
" <td>6824</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2018-09-29</td>\n",
" <td>8014</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2018-09-28</td>\n",
" <td>10988</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2018-09-27</td>\n",
" <td>11996</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>2018-09-26</td>\n",
" <td>7273</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" date value\n",
"0 2018-09-30 6824\n",
"1 2018-09-29 8014\n",
"2 2018-09-28 10988\n",
"3 2018-09-27 11996\n",
"4 2018-09-26 7273"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"print(df.shape)\n",
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [],
"source": [
"df['datenum'] = dates.datestr2num(df['date'].dt.strftime(\"%Y-%m-%d\")) #pd.to_numeric(df.date)"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {},
"outputs": [],
"source": [
"df = df[df['value'] != 0]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Google Fit"
]
},
{
"cell_type": "code",
"execution_count": 100,
"metadata": {},
"outputs": [],
"source": [
"df_fit = pd.read_csv(\"data/Fit/Daily Aggregations/Daily Summaries.csv\")"
]
},
{
"cell_type": "code",
"execution_count": 148,
"metadata": {},
"outputs": [],
"source": [
"df_mix = df_fit.merge(df.assign(Date=df['date'].dt.strftime(\"%Y-%m-%d\")), on='Date', how='outer')"
]
},
{
"cell_type": "code",
"execution_count": 158,
"metadata": {},
"outputs": [],
"source": [
"df_mix['Steps'] = df_mix[['value', 'Step count']].mean(axis=1)"
]
},
{
"cell_type": "code",
"execution_count": 286,
"metadata": {},
"outputs": [],
"source": [
"df_mix.dropna(axis=0, subset=['Steps'], inplace=True)"
]
},
{
"cell_type": "code",
"execution_count": 163,
"metadata": {},
"outputs": [],
"source": [
"df_mix['datenum'] = dates.datestr2num(df_mix['Date']) #pd.to_numeric(df.date)"
]
},
{
"cell_type": "code",
"execution_count": 289,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/arch/.virtualenvs/jupyterlab/lib/python3.7/site-packages/seaborn/regression.py:237: RankWarning: Polyfit may be poorly conditioned\n",
" return np.polyval(np.polyfit(_x, _y, order), grid)\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1080x360 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(15,5))\n",
"#fig, ax = plt.subplots()\n",
"ax = sns.regplot(x=\"datenum\", y=\"Steps\", data=df_mix, order=4, ci=None, truncate=True)# x_estimator=np.mean, logx=True, truncate=True)\n",
"\n",
"# xlim\n",
"ax.set_ylim(0, 50000)\n",
"ax.set_xlim(736070, 737000)\n",
"\n",
"# here's the magic:\n",
"ax.xaxis.set_major_formatter(fake_dates)\n",
"\n",
"# legible labels\n",
"ax.tick_params(labelrotation=45)"
]
},
{
"cell_type": "code",
"execution_count": 214,
"metadata": {},
"outputs": [],
"source": [
"df_mix['date'] = pd.to_datetime(df_mix['Date'], format='%Y-%m-%d')"
]
},
{
"cell_type": "code",
"execution_count": 290,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/arch/.virtualenvs/jupyterlab/lib/python3.7/site-packages/scipy/stats/stats.py:1713: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
" return np.add.reduce(sorted[indexer] * weights, axis=axis) / sumval\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1080x360 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(15,5))\n",
"#months = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"]\n",
"ax = sns.barplot(x=\"week\", y=\"Steps\", data=df_mix.assign(week = df_mix['date'].dt.week))\n",
"#_ = ax.set_xticklabels(months)"
]
},
{
"cell_type": "code",
"execution_count": 291,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/arch/.virtualenvs/jupyterlab/lib/python3.7/site-packages/scipy/stats/stats.py:1713: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
" return np.add.reduce(sorted[indexer] * weights, axis=axis) / sumval\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1080x360 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(15,5))\n",
"months = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"]\n",
"ax = sns.barplot(x=\"month\", y=\"Steps\", data=df_mix.assign(month = df_mix['date'].dt.month))\n",
"_ = ax.set_xticklabels(months)"
]
},
{
"cell_type": "code",
"execution_count": 220,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/arch/.virtualenvs/jupyterlab/lib/python3.7/site-packages/scipy/stats/stats.py:1713: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
" return np.add.reduce(sorted[indexer] * weights, axis=axis) / sumval\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1080x360 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(15,5))\n",
"weekday = [\"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\", \"Sunday\"]\n",
"ax = sns.barplot(x=\"weekday\", y=\"Steps\", data=df_mix.assign(weekday = df_mix['date'].dt.dayofweek))\n",
"_ = ax.set_xticklabels(weekday)"
]
},
{
"cell_type": "code",
"execution_count": 231,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/arch/.virtualenvs/jupyterlab/lib/python3.7/site-packages/scipy/stats/stats.py:1713: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
" return np.add.reduce(sorted[indexer] * weights, axis=axis) / sumval\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1080x360 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(15,5))\n",
"seasons = [\"winter\", \"spring\", \"summer\", \"autom\"]\n",
"ax = sns.barplot(x=\"season\", y=\"Steps\", data=df_mix.assign(season = (df_mix['date'].dt.month%12 + 3)//3))\n",
"_ = ax.set_xticklabels(seasons)"
]
},
{
"cell_type": "code",
"execution_count": 237,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/arch/.virtualenvs/jupyterlab/lib/python3.7/site-packages/scipy/stats/stats.py:1713: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
" return np.add.reduce(sorted[indexer] * weights, axis=axis) / sumval\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1080x360 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(15,5))\n",
"ax = sns.barplot(x=\"year\", y=\"Steps\", data=df_mix.assign(year =df_mix['date'].dt.year))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Daily steps calendar heatmap"
]
},
{
"cell_type": "code",
"execution_count": 239,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df_steps = pd.concat([df_mix['date'].dt.strftime(\"%s\"), df_mix['Steps']], axis=1)"
]
},
{
"cell_type": "code",
"execution_count": 292,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"dic_steps = dict()\n",
"for k,x in df_steps.iterrows():\n",
" dic_steps[x['date']] = x['Steps']"
]
},
{
"cell_type": "code",
"execution_count": 293,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"html_code =\"\"\"\n",
"<script type=\"text/javascript\" src=\"//d3js.org/d3.v3.min.js\"></script>\n",
"<script type=\"text/javascript\" src=\"//cdn.jsdelivr.net/cal-heatmap/3.3.10/cal-heatmap.min.js\"></script>\n",
"<link rel=\"stylesheet\" href=\"//cdn.jsdelivr.net/cal-heatmap/3.3.10/cal-heatmap.css\" />\n",
"<div id=\"cal-heatmap\"></div>\n",
"<button id=\"example-c-PreviousDomain-selector\" style=\"margin-bottom: 10px;\" class=\"btn\"><i class=\"icon icon-chevron-left\"></i></button>\n",
"<button id=\"example-c-NextDomain-selector\" style=\"margin-bottom: 10px;\" class=\"btn\"><i class=\"icon icon-chevron-right\"></i></button>\n",
"<script type=\"text/javascript\">\n",
" var cal = new CalHeatMap();\n",
" cal.init({\n",
" start: new Date(2016, 3, 1, 1), // January, 1st 2000\n",
" range: 12,\n",
" domain: \"month\",\n",
" subDomain: \"day\",\n",
" nextSelector: \"#example-c-NextDomain-selector\",\n",
" previousSelector: \"#example-c-PreviousDomain-selector\",\n",
" data: %s,\n",
" legend: [3000, 7000, 10000, 15000, 20000],\n",
" legendColors: [\"#ecf5e2\", \"#232181\"]\n",
" });\n",
"</script>\"\"\" % dic_steps"
]
},
{
"cell_type": "code",
"execution_count": 294,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"<script type=\"text/javascript\" src=\"//d3js.org/d3.v3.min.js\"></script>\n",
"<script type=\"text/javascript\" src=\"//cdn.jsdelivr.net/cal-heatmap/3.3.10/cal-heatmap.min.js\"></script>\n",
"<link rel=\"stylesheet\" href=\"//cdn.jsdelivr.net/cal-heatmap/3.3.10/cal-heatmap.css\" />\n",
"<div id=\"cal-heatmap\"></div>\n",
"<button id=\"example-c-PreviousDomain-selector\" style=\"margin-bottom: 10px;\" class=\"btn\"><i class=\"icon icon-chevron-left\"></i></button>\n",
"<button id=\"example-c-NextDomain-selector\" style=\"margin-bottom: 10px;\" class=\"btn\"><i class=\"icon icon-chevron-right\"></i></button>\n",
"<script type=\"text/javascript\">\n",
" var cal = new CalHeatMap();\n",
" cal.init({\n",
" start: new Date(2016, 3, 1, 1), // January, 1st 2000\n",
" range: 12,\n",
" domain: \"month\",\n",
" subDomain: \"day\",\n",
" nextSelector: \"#example-c-NextDomain-selector\",\n",
" previousSelector: \"#example-c-PreviousDomain-selector\",\n",
" data: {'1503871200': 4569.0, '1503957600': 7909.0, '1504044000': 18498.0, '1504130400': 4688.0, '1504216800': 13072.0, '1504303200': 29903.0, '1504389600': 5546.0, '1504476000': 9113.0, '1504562400': 16922.0, '1504648800': 7842.0, '1504735200': 13482.0, '1504821600': 10910.0, '1504908000': 27229.0, '1504994400': 1860.0, '1505080800': 11565.0, '1505167200': 15133.0, '1505253600': 5567.0, '1505340000': 9473.0, '1505426400': 7793.0, '1505512800': 18393.0, '1505599200': 11863.0, '1505685600': 6460.0, '1505772000': 11833.0, '1505858400': 7907.0, '1505944800': 15162.0, '1506031200': 4780.0, '1506117600': 25617.0, '1506204000': 4800.0, '1506290400': 11419.0, '1506376800': 15618.0, '1506463200': 5309.0, '1506549600': 12462.0, '1506636000': 6255.0, '1506722400': 5543.0, '1506808800': 4274.0, '1506895200': 11036.0, '1506981600': 4716.0, '1507068000': 8028.0, '1507154400': 2946.0, '1507240800': 10203.0, '1507327200': 12386.0, '1507413600': 47185.0, '1507500000': 7069.0, '1507586400': 3662.0, '1507672800': 13310.0, '1507759200': 11634.0, '1507845600': 7953.0, '1507932000': 11224.0, '1508018400': 14582.0, '1508104800': 6075.0, '1508191200': 3422.0, '1508277600': 6864.0, '1508364000': 6932.0, '1508450400': 11204.0, '1508536800': 3165.0, '1508623200': 1779.0, '1508709600': 7053.0, '1508796000': 8594.0, '1508882400': 7038.0, '1508968800': 5052.0, '1509055200': 13476.0, '1509141600': 8167.0, '1509228000': 7655.0, '1509318000': 3234.0, '1509404400': 8671.0, '1509490800': 9045.0, '1509577200': 4149.0, '1509663600': 9787.0, '1509750000': 8616.0, '1509836400': 2008.0, '1509922800': 8263.0, '1510009200': 7223.0, '1510095600': 5335.0, '1510182000': 8709.0, '1510268400': 7824.0, '1510354800': 7467.0, '1510441200': 17949.0, '1510527600': 7763.0, '1510614000': 4480.0, '1510700400': 7666.0, '1510786800': 8571.0, '1510873200': 5630.0, '1510959600': 5545.0, '1511046000': 0.0, '1511132400': 6198.0, '1511218800': 6112.0, '1511305200': 8003.0, '1511391600': 3986.0, '1511478000': 19366.0, '1511564400': 12993.0, '1511650800': 8658.0, '1511737200': 5815.0, '1511823600': 3156.0, '1511910000': 42.0, '1511996400': 7723.0, '1512082800': 10369.0, '1512169200': 5861.0, '1512255600': 10766.0, '1512342000': 10024.0, '1512428400': 4562.0, '1512514800': 14264.0, '1512601200': 9202.0, '1512687600': 6252.0, '1512774000': 13834.0, '1512860400': 95.0, '1512946800': 4072.0, '1513033200': 6377.0, '1513119600': 973.0, '1513206000': 5250.0, '1513292400': 10159.0, '1513378800': 4830.0, '1513465200': 5224.0, '1513551600': 2933.0, '1513638000': 6390.0, '1513724400': 13403.0, '1513810800': 4968.0, '1513897200': 3027.0, '1513983600': 21894.0, '1514070000': 2678.0, '1514156400': 12912.0, '1514242800': 165.0, '1514329200': 7828.0, '1514415600': 7028.0, '1514502000': 9048.0, '1514588400': 22108.0, '1514674800': 8186.0, '1514761200': 11099.0, '1514847600': 15125.0, '1514934000': 7601.0, '1515020400': 5975.0, '1515106800': 5880.0, '1515193200': 10211.0, '1515279600': 9612.0, '1515366000': 5404.0, '1515452400': 8982.0, '1515538800': 6213.0, '1515625200': 10873.0, '1515711600': 8832.0, '1515798000': 5502.0, '1515884400': 860.0, '1515970800': 4327.0, '1516057200': 5596.0, '1516143600': 6668.0, '1516230000': 7594.0, '1516316400': 9565.0, '1516402800': 7226.0, '1516489200': 6646.0, '1516575600': 6670.0, '1516662000': 313.0, '1516748400': 6089.0, '1516834800': 11691.0, '1516921200': 10798.0, '1517007600': 28415.0, '1517094000': 26704.0, '1517180400': 5805.0, '1517266800': 16435.0, '1517353200': 4919.0, '1517439600': 5742.0, '1517526000': 9314.0, '1517612400': 11912.0, '1517698800': 12761.0, '1517785200': 7641.0, '1517871600': 8593.0, '1517958000': 8476.0, '1518044400': 8002.0, '1518130800': 11926.0, '1518217200': 17336.0, '1518303600': 4205.0, '1518390000': 7673.0, '1518476400': 10088.0, '1518562800': 4959.0, '1518649200': 13520.0, '1518735600': 7542.0, '1518822000': 7733.0, '1518908400': 2589.0, '1518994800': 7762.0, '1519081200': 5786.0, '1519167600': 10356.0, '1519254000': 13143.0, '1519340400': 8411.0, '1519426800': 18425.0, '1519513200': 9446.0, '1519599600': 8229.0, '1519686000': 6435.0, '1519772400': 7505.0, '1519858800': 9486.0, '1519945200': 8212.0, '1520031600': 4810.0, '1520118000': 14182.0, '1520204400': 9163.0, '1520290800': 11307.0, '1520377200': 7107.0, '1520463600': 13852.0, '1520550000': 5946.0, '1520636400': 8191.0, '1520722800': 12451.0, '1520809200': 8082.0, '1520895600': 11505.0, '1520982000': 10521.0, '1521068400': 4707.0, '1521154800': 10543.0, '1521241200': 6272.0, '1521327600': 7872.0, '1521759600': 10637.0, '1521846000': 8992.0, '1521932400': 2326.0, '1522015200': 7817.0, '1522101600': 13998.0, '1522188000': 10771.0, '1522274400': 9040.0, '1522360800': 6440.0, '1522447200': 12214.0, '1522533600': 10684.0, '1522620000': 1202.0, '1523743200': nan, '1523829600': nan, '1523916000': nan, '1524002400': nan, '1524088800': nan, '1524175200': nan, '1524261600': 1276.0, '1524348000': 19989.0, '1524434400': 6983.0, '1524520800': 10035.0, '1524607200': 7454.0, '1524693600': nan, '1524780000': nan, '1524866400': nan, '1524952800': 521.0, '1525039200': 10292.0, '1525125600': 5863.0, '1525212000': 14246.0, '1525298400': 9675.0, '1525384800': 17794.0, '1525471200': 16181.0, '1525557600': 7840.0, '1525644000': 12489.0, '1525730400': 15457.0, '1525816800': 33878.0, '1525903200': 9709.0, '1525989600': 6820.0, '1526076000': 7730.0, '1526162400': 5885.0, '1526248800': 6233.0, '1526335200': 11208.0, '1526421600': 13552.0, '1526508000': 643.0, '1529704800': nan, '1529791200': nan, '1529877600': nan, '1529964000': nan, '1530050400': nan, '1530136800': nan, '1530223200': nan, '1530309600': 12204.0, '1538258400': 6824.0, '1538172000': 8014.0, '1538085600': 10988.0, '1537999200': 11996.0, '1537912800': 7273.0, '1537826400': 10791.0, '1537740000': 7381.0, '1537653600': 13195.0, '1537567200': 6910.0, '1537480800': 7672.0, '1537394400': 6592.0, '1537308000': 6999.0, '1537221600': 7870.0, '1537135200': 6899.0, '1537048800': 12304.0, '1536962400': 5272.0, '1536876000': 4989.0, '1536789600': 7688.0, '1536703200': 6595.0, '1536616800': 8287.0, '1536530400': 9218.0, '1536444000': 4354.0, '1536357600': 10564.0, '1536271200': 5067.0, '1536184800': 7446.0, '1536098400': 10025.0, '1536012000': 6091.0, '1535925600': 4177.0, '1535839200': 9270.0, '1535752800': 12617.0, '1535666400': 4976.0, '1535580000': 8383.0, '1535493600': 10128.0, '1535407200': 3308.0, '1535320800': 8612.0, '1535234400': 10642.0, '1535148000': 8473.0, '1535061600': 3036.0, '1534975200': 6132.0, '1534888800': 3343.0, '1534802400': 7574.0, '1534716000': 3341.0, '1534629600': 6169.0, '1534543200': 12538.0, '1534456800': 9991.0, '1534370400': 7489.0, '1534284000': 11316.0, '1534197600': 9045.0, '1534111200': 8740.0, '1534024800': 9313.0, '1533938400': 10414.0, '1533852000': 11821.0, '1533765600': 11850.0, '1533679200': 6772.0, '1533592800': 5295.0, '1533506400': 10430.0, '1533420000': 11351.0, '1533333600': 19873.0, '1533247200': 4916.0, '1533160800': 4925.0, '1533074400': 5966.0, '1532988000': 3977.0, '1532901600': 6463.0, '1532815200': 10201.0, '1532728800': 16345.0, '1532642400': 10532.0, '1532556000': 7787.0, '1532469600': 8225.0, '1532383200': 6488.0, '1532296800': 16719.0, '1532210400': 3028.0, '1532124000': 17008.0, '1532037600': 9577.0, '1531951200': 13170.0, '1531864800': 4157.0, '1531778400': 11728.0, '1531692000': 18136.0, '1531605600': 13797.0, '1531519200': 23105.0, '1531432800': 31593.0, '1531346400': 19538.0, '1531260000': 16274.0, '1531173600': 18320.0, '1531087200': 9786.0, '1531000800': 10596.0, '1530914400': 25257.0, '1530828000': 17407.0, '1530741600': 21305.0, '1530655200': 23177.0, '1530568800': 14490.0, '1530482400': 20041.0, '1530396000': 15012.0, '1503784800': 4483.0, '1503698400': 22973.0, '1503612000': 8489.0, '1503525600': 4833.0, '1503439200': 11274.0, '1503352800': 11602.0, '1503266400': 11752.0, '1503180000': 3307.0, '1503093600': 18781.0, '1503007200': 5980.0, '1502920800': 9296.0, '1502834400': 11482.0, '1502748000': 13466.0, '1502661600': 10698.0, '1502575200': 10871.0, '1502488800': 20101.0, '1502402400': 7157.0, '1502316000': 8862.0, '1502229600': 4683.0, '1502143200': 10240.0, '1502056800': 5523.0, '1501970400': 14329.0, '1501884000': 7515.0, '1501797600': 4458.0, '1501711200': 10668.0, '1501624800': 3788.0, '1501538400': 8135.0, '1501452000': 6593.0, '1501365600': 8098.0, '1501279200': 13871.0, '1501192800': 9236.0, '1501106400': 9507.0, '1501020000': 8814.0, '1500933600': 9799.0, '1500847200': 9709.0, '1500760800': 8136.0, '1500674400': 4049.0, '1500588000': 9127.0, '1500501600': 9428.0, '1500415200': 8305.0, '1500328800': 8211.0, '1500242400': 12188.0, '1500156000': 10235.0, '1500069600': 15758.0, '1499983200': 15243.0, '1499896800': 10186.0, '1499810400': 8330.0, '1499724000': 15302.0, '1499637600': 9962.0, '1499551200': 7789.0, '1499464800': 12002.0, '1499378400': 11072.0, '1499292000': 10693.0, '1499205600': 11270.0, '1499119200': 11380.0, '1499032800': 9096.0, '1498946400': 7569.0, '1498860000': 7467.0, '1498773600': 10089.0, '1498687200': 14613.0, '1498600800': 7255.0, '1498514400': 21692.0, '1498428000': 18806.0, '1498341600': 5873.0, '1498255200': 18729.0, '1498168800': 14467.0, '1498082400': 9490.0, '1497996000': 9918.0, '1497909600': 12445.0, '1497823200': 10729.0, '1497736800': 9121.0, '1497650400': 11354.0, '1497564000': 11672.0, '1497477600': 8567.0, '1497391200': 3879.0, '1497304800': 4396.0, '1497218400': 5083.0, '1497132000': 6599.0, '1497045600': 12586.0, '1496959200': 14480.0, '1496872800': 6451.0, '1496786400': 8243.0, '1496700000': 5733.0, '1496613600': 6250.0, '1496527200': 5182.0, '1496440800': 12209.0, '1496354400': 7173.0, '1496268000': 5485.0, '1496181600': 5020.0, '1496095200': 4819.0, '1496008800': 4384.0, '1495922400': 7223.0, '1495836000': 6715.0, '1492466400': 3861.0, '1492380000': 5206.0, '1492293600': 7287.0, '1492207200': 5455.0, '1492120800': 5212.0, '1492034400': 5367.0, '1491948000': 4577.0, '1491861600': 5407.0, '1491775200': 4930.0, '1491688800': 16677.0, '1491602400': 9192.0, '1491516000': 16711.0, '1491429600': 5193.0, '1491343200': 6900.0, '1491256800': 4645.0, '1491170400': 9300.0, '1491084000': 4553.0, '1490997600': 7630.0, '1490911200': 5425.0, '1490824800': 7589.0, '1490738400': 6070.0, '1490652000': 6980.0, '1490565600': 9348.0, '1490482800': 16968.0, '1490396400': 12549.0, '1490310000': 5951.0, '1490223600': 6223.0, '1490137200': 8346.0, '1490050800': 5785.0, '1489964400': 5790.0, '1489878000': 4683.0, '1489791600': 3843.0, '1489705200': 6989.0, '1489618800': 9176.0, '1489532400': 8973.0, '1489446000': 6944.0, '1489359600': 6730.0, '1489273200': 5512.0, '1489186800': 9070.0, '1489100400': 7746.0, '1489014000': 8585.0, '1488927600': 6636.0, '1488841200': 6772.0, '1488754800': 5330.0, '1488668400': 8958.0, '1488582000': 2249.0, '1488495600': 3842.0, '1488409200': 10466.0, '1488322800': 6978.0, '1488236400': 4336.0, '1488150000': 4919.0, '1488063600': 7005.0, '1487977200': 4862.0, '1487890800': 5583.0, '1487804400': 3730.0, '1487718000': 6256.0, '1487631600': 6042.0, '1487545200': 3678.0, '1487458800': 7333.0, '1487372400': 5707.0, '1487286000': 6523.0, '1487199600': 5988.0, '1487113200': 4146.0, '1487026800': 4429.0, '1486940400': 4335.0, '1486854000': 4134.0, '1486767600': 5126.0, '1486681200': 3571.0, '1486594800': 4466.0, '1486508400': 7455.0, '1486422000': 6414.0, '1486335600': 10379.0, '1486249200': 9635.0, '1486162800': 7185.0, '1486076400': 5584.0, '1485990000': 3476.0, '1485903600': 7161.0, '1485817200': 3949.0, '1485730800': 6327.0, '1485644400': 5589.0, '1485558000': 2147.0, '1485471600': 7828.0, '1485385200': 5535.0, '1485298800': 6378.0, '1485212400': 5202.0, '1485126000': 5995.0, '1485039600': 7397.0, '1484953200': 2846.0, '1484866800': 7638.0, '1484780400': 8258.0, '1484694000': 5989.0, '1484607600': 3475.0, '1484521200': 5554.0, '1484434800': 5840.0, '1484348400': 9654.0, '1484262000': 8965.0, '1484175600': 4059.0, '1484089200': 6517.0, '1484002800': 8366.0, '1483916400': 9590.0, '1483830000': 8001.0, '1483743600': 8764.0, '1483657200': 4776.0, '1483570800': 11531.0, '1483484400': 13620.0, '1483398000': 13414.0, '1483311600': 4284.0, '1483225200': 8027.0, '1483138800': 6466.0, '1483052400': 6056.0, '1482966000': 6393.0, '1482879600': 3824.0, '1482793200': 9534.0, '1482706800': 7841.0, '1482620400': 2887.0, '1482534000': 4681.0, '1482447600': 7172.0, '1482361200': 12277.0, '1482274800': 6676.0, '1482188400': 8335.0, '1482102000': 9613.0, '1482015600': 4665.0, '1481929200': 6965.0, '1481842800': 6296.0, '1481756400': 10764.0, '1481670000': 5653.0, '1481583600': 9399.0, '1481497200': 5180.0, '1481410800': 9593.0, '1481324400': 25691.0, '1481238000': 18896.0, '1481151600': 15855.0, '1481065200': 3985.0, '1480978800': 6280.0, '1480892400': 4550.0, '1480806000': 14610.0, '1480719600': 12905.0, '1480633200': 10095.0, '1480546800': 9073.0, '1480460400': 3025.0, '1480374000': 3982.0, '1480287600': 9907.0, '1480201200': 5771.0, '1480114800': 14600.0, '1480028400': 8071.0, '1479942000': 4079.0, '1479855600': 4987.0, '1479769200': 8161.0, '1479682800': 2815.0, '1479596400': 16599.0, '1479510000': 7865.0, '1479423600': 9249.0, '1479337200': 3153.0, '1479250800': 4173.0, '1479164400': 1554.0, '1479078000': 7430.0, '1478991600': 646.0, '1478905200': 5489.0, '1478818800': 6815.0, '1478732400': 10154.0, '1478646000': 4518.0, '1478559600': 7003.0, '1478473200': 2947.0, '1478386800': 6315.0, '1478300400': 7516.0, '1478214000': 5918.0, '1478127600': 4734.0, '1478041200': 8073.0, '1477954800': 13703.0, '1477868400': 3914.0, '1477778400': 19248.0, '1477692000': 14833.0, '1477605600': 7920.0, '1477519200': 10361.0, '1477432800': 6216.0, '1477346400': 7914.0, '1477260000': 8717.0, '1477173600': 8176.0, '1477087200': 11585.0, '1477000800': 7674.0, '1476914400': 8371.0, '1476828000': 17748.0, '1476741600': 7203.0, '1476655200': 13286.0, '1476568800': 20949.0, '1476482400': 7907.0, '1476396000': 8742.0, '1476309600': 6286.0, '1476223200': 8389.0, '1476136800': 7194.0, '1476050400': 6153.0, '1475964000': 7518.0, '1475877600': 26975.0, '1475791200': 12311.0, '1475704800': 17700.0, '1475618400': 9224.0, '1475532000': 20355.0, '1475445600': 11484.0, '1475359200': 15358.0, '1475272800': 19694.0, '1475186400': 12765.0, '1475100000': 12166.0, '1475013600': 16001.0, '1474927200': 13920.0, '1474840800': 10696.0, '1474754400': 2682.0, '1474668000': 7571.0, '1474581600': 11433.0, '1474495200': 7209.0, '1474408800': 8005.0, '1474322400': 7625.0, '1474236000': 7714.0, '1474149600': 5921.0, '1474063200': 2043.0, '1473976800': 6849.0, '1473890400': 8761.0, '1473804000': 5866.0, '1473717600': 11284.0, '1473631200': 10331.0, '1473544800': 12365.0, '1473458400': 14569.0, '1473372000': 9867.0, '1473285600': 10126.0, '1473199200': 7334.0, '1473112800': 7208.0, '1473026400': 7425.0, '1472940000': 8636.0, '1472853600': 9299.0, '1472767200': 10077.0, '1472680800': 7024.0, '1472594400': 8376.0, '1472508000': 5095.0, '1472421600': 6279.0, '1472335200': 11757.0, '1472248800': 25078.0, '1472162400': 9105.0, '1472076000': 7636.0, '1471989600': 6450.0, '1471903200': 7457.0, '1471816800': 7557.0, '1471730400': 25128.0, '1471644000': 31210.0, '1471557600': 25130.0, '1471471200': 33697.0, '1471384800': 20536.0, '1471298400': 26636.0, '1471212000': 27625.0, '1471125600': 37018.0, '1471039200': 35577.0, '1470952800': 14372.0, '1470866400': 5648.0, '1470780000': 8318.0, '1470693600': 7226.0, '1470607200': 2353.0, '1470520800': 9961.0, '1470434400': 8835.0, '1470348000': 8981.0, '1470261600': 12211.0, '1470175200': 14560.0, '1470088800': 7297.0, '1470002400': 13051.0, '1469916000': 11769.0, '1469829600': 26338.0, '1469743200': 12052.0, '1469656800': 14765.0, '1469570400': 6338.0, '1469484000': 10012.0, '1469397600': 16971.0, '1469311200': 17206.0, '1469224800': 19103.0, '1469138400': 20679.0, '1469052000': 23240.0, '1468965600': 20219.0, '1468879200': 11985.0, '1468792800': 14270.0, '1468706400': 6452.0, '1468620000': 14079.0, '1468533600': 17985.0, '1468447200': 21223.0, '1468360800': 15130.0, '1468274400': 6546.0, '1468188000': 13773.0, '1468101600': 8897.0, '1468015200': 23421.0, '1467928800': 13813.0, '1467842400': 6508.0, '1467756000': 19592.0, '1467669600': 6620.0, '1467583200': 12031.0, '1467496800': 3335.0, '1467410400': 3525.0, '1467324000': 9484.0, '1467237600': 4952.0, '1467151200': 8853.0, '1467064800': 5955.0, '1466978400': 5340.0, '1466892000': 5901.0, '1466805600': 8028.0, '1466719200': 866.0, '1466632800': 7255.0, '1466546400': 11993.0, '1466460000': 16128.0, '1466373600': 11326.0, '1466287200': 14479.0, '1466200800': 12330.0, '1466114400': 15922.0, '1466028000': 9243.0, '1465941600': 6335.0, '1465855200': 8197.0, '1465768800': 5594.0, '1465682400': 10751.0, '1465596000': 6610.0, '1465509600': 13374.0, '1465423200': 8894.0, '1465336800': 12255.0, '1465250400': 15502.0, '1465164000': 7660.0, '1465077600': 6965.0, '1464991200': 10949.0, '1464904800': 8617.0, '1464818400': 8412.0, '1464732000': 7452.0, '1464645600': 10541.0, '1464559200': 6870.0, '1464472800': 6110.0, '1464386400': 19938.0, '1464300000': 12296.0, '1464213600': 15623.0, '1464127200': 15346.0, '1464040800': 8728.0, '1463954400': 5328.0, '1463868000': 9135.0, '1463781600': 5729.0, '1463695200': 7721.0, '1463608800': 10026.0, '1463522400': 7382.0, '1463436000': 11231.0, '1463349600': 26843.0, '1463263200': 30856.0, '1463176800': 28547.0, '1463090400': 8831.0, '1463004000': 17926.0, '1462917600': 4810.0, '1462831200': 11937.0, '1462744800': 5739.0, '1462658400': 17582.0, '1462572000': 15394.0},\n",
" legend: [3000, 7000, 10000, 15000, 20000],\n",
" legendColors: [\"#ecf5e2\", \"#232181\"]\n",
" });\n",
"</script>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"execution_count": 294,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"HTML(html_code)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Steps per day scatter plot"
]
},
{
"cell_type": "code",
"execution_count": 295,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"list_steps = []\n",
"for k,x in df_mix.iterrows():\n",
" list_steps.append({'x': x['date'].strftime(\"%Y-%m-%d\"), 'y': x['Steps']})"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Mean steps"
]
},
{
"cell_type": "code",
"execution_count": 296,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"x=df_mix['date'].dt.strftime(\"%s\").astype('int').values\n",
"y=df_mix['Steps'].values\n",
"num_samples = 100\n",
"p, cov = np.polyfit(x, y, 3, cov=True)\n",
"z = np.poly1d(p)\n",
"\n",
"xi = np.linspace(np.min(x), np.max(x), num_samples)\n",
"yi = z(xi)"
]
},
{
"cell_type": "code",
"execution_count": 298,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"list_mean_steps = []\n",
"list_upper_steps = []\n",
"list_lower_steps = []\n",
"for i in range(num_samples):\n",
" list_mean_steps.append({'x': pd.to_datetime(xi, unit='s', errors='ignore')[i].strftime(\"%Y-%m-%d\"), 'y': np.round(yi[i])})\n",
" list_upper_steps.append({'x': pd.to_datetime(xi, unit='s', errors='ignore')[i].strftime(\"%Y-%m-%d\"), 'y': np.round(yi[i]+np.percentile(df_mix['Steps'],2.5))})\n",
" list_lower_steps.append({'x': pd.to_datetime(xi, unit='s', errors='ignore')[i].strftime(\"%Y-%m-%d\"), 'y': np.round(yi[i]-np.percentile(df_mix['Steps'],2.5))})"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Export to csv"
]
},
{
"cell_type": "code",
"execution_count": 301,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"with open('output/withings_steps.json', 'w') as outfile:\n",
" json.dump({'steps_mean_low': list_lower_steps,\n",
" 'steps_mean_high': list_upper_steps,\n",
" 'steps_mean': list_mean_steps,\n",
" 'steps_points': list_steps,\n",
" 'steps_heatmap': dic_steps,\n",
" 'steps_month': { 'index': months, 'values': [x[0] for x in df_mix.groupby(df_mix['date'].dt.month).agg({'Steps':np.mean}).round(1).values ] },\n",
" 'steps_weekday': { 'index': weekday, 'values': [x[0] for x in df_mix.groupby(df_mix['date'].dt.dayofweek).agg({'Steps':np.mean}).round(1).values] }\n",
" }, outfile, indent=1)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"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.7.0"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment