{ "cells": [ { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1989-05-01/1989-05-07 1989-05-15/1989-05-21\n" ] }, { "ename": "TypeError", "evalue": "index type not supported", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 49\u001b[0m \u001b[0myearly_incidence\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mpd\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mSeries\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0myearly_incidence\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mindex\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0myear\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 50\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 51\u001b[0;31m \u001b[0myearly_incidence\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstyle\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'*'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 52\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 53\u001b[0m \u001b[0myearly_incidence\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msort_values\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/plotting/_core.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, kind, ax, figsize, use_index, title, grid, legend, style, logx, logy, loglog, xticks, yticks, xlim, ylim, rot, fontsize, colormap, table, yerr, xerr, label, secondary_y, **kwds)\u001b[0m\n\u001b[1;32m 2501\u001b[0m \u001b[0mcolormap\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mcolormap\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtable\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mtable\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myerr\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0myerr\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2502\u001b[0m \u001b[0mxerr\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mxerr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlabel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mlabel\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0msecondary_y\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0msecondary_y\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2503\u001b[0;31m **kwds)\n\u001b[0m\u001b[1;32m 2504\u001b[0m \u001b[0m__call__\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__doc__\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mplot_series\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__doc__\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2505\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/plotting/_core.py\u001b[0m in \u001b[0;36mplot_series\u001b[0;34m(data, kind, ax, figsize, use_index, title, grid, legend, style, logx, logy, loglog, xticks, yticks, xlim, ylim, rot, fontsize, colormap, table, yerr, xerr, label, secondary_y, **kwds)\u001b[0m\n\u001b[1;32m 1925\u001b[0m \u001b[0myerr\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0myerr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxerr\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mxerr\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1926\u001b[0m \u001b[0mlabel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mlabel\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0msecondary_y\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0msecondary_y\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1927\u001b[0;31m **kwds)\n\u001b[0m\u001b[1;32m 1928\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1929\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/plotting/_core.py\u001b[0m in \u001b[0;36m_plot\u001b[0;34m(data, x, y, subplots, ax, kind, **kwds)\u001b[0m\n\u001b[1;32m 1727\u001b[0m \u001b[0mplot_obj\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mklass\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0msubplots\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0msubplots\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0max\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0max\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mkind\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mkind\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1728\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1729\u001b[0;31m \u001b[0mplot_obj\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgenerate\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1730\u001b[0m \u001b[0mplot_obj\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdraw\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1731\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mplot_obj\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mresult\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/plotting/_core.py\u001b[0m in \u001b[0;36mgenerate\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 250\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_compute_plot_data\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 251\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_setup_subplots\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 252\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_make_plot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 253\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_add_table\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 254\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_make_legend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/plotting/_core.py\u001b[0m in \u001b[0;36m_make_plot\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 975\u001b[0m \u001b[0mstacking_id\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mstacking_id\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 976\u001b[0m \u001b[0mis_errorbar\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mis_errorbar\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 977\u001b[0;31m **kwds)\n\u001b[0m\u001b[1;32m 978\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_add_legend_handle\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnewlines\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlabel\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mindex\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 979\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/plotting/_core.py\u001b[0m in \u001b[0;36m_ts_plot\u001b[0;34m(cls, ax, x, data, style, **kwds)\u001b[0m\n\u001b[1;32m 1016\u001b[0m \u001b[0mlines\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcls\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_plot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0max\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalues\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mstyle\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mstyle\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1017\u001b[0m \u001b[0;31m# set date formatter, locators and rescale limits\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1018\u001b[0;31m \u001b[0mformat_dateaxis\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0max\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0max\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfreq\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1019\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mlines\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1020\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/plotting/_timeseries.py\u001b[0m in \u001b[0;36mformat_dateaxis\u001b[0;34m(subplot, freq, index)\u001b[0m\n\u001b[1;32m 340\u001b[0m TimeSeries_TimedeltaFormatter())\n\u001b[1;32m 341\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 342\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'index type not supported'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 343\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 344\u001b[0m \u001b[0mpylab\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdraw_if_interactive\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mTypeError\u001b[0m: index type not supported" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import pandas as pd\n", "import isoweek\n", "\n", "data_url = \"http://www.sentiweb.fr/datasets/incidence-PAY-3.csv\"\n", "\n", "raw_data = pd.read_csv(data_url, skiprows=1)\n", "raw_data\n", "\n", "raw_data[raw_data.isnull().any(axis=1)]\n", "\n", "data = raw_data.dropna().copy()\n", "data\n", "\n", "def convert_week(year_and_week_int):\n", " year_and_week_str = str(year_and_week_int)\n", " year = int(year_and_week_str[:4])\n", " week = int(year_and_week_str[4:])\n", " w = isoweek.Week(year, week)\n", " return pd.Period(w.day(0), 'W')\n", "\n", "data['period'] = [convert_week(yw) for yw in data['week']]\n", "\n", "sorted_data = data.set_index('period').sort_index()\n", "\n", "periods = sorted_data.index\n", "for p1, p2 in zip(periods[:-1], periods[1:]):\n", " delta = p2.to_timestamp() - p1.end_time\n", " if delta > pd.Timedelta('1s'):\n", " print(p1, p2)\n", " \n", "sorted_data['inc'].plot()\n", "\n", "sorted_data['inc'][-200:].plot()\n", "\n", "first_august_week = [pd.Period(pd.Timestamp(y, 8, 1), 'W')\n", " for y in range(1985,\n", " sorted_data.index[-1].year)]\n", "\n", "year = []\n", "yearly_incidence = []\n", "for week1, week2 in zip(first_august_week[:-1],\n", " first_august_week[1:]):\n", " one_year = sorted_data['inc'][week1:week2-1]\n", " assert abs(len(one_year)-52) < 2\n", " yearly_incidence.append(one_year.sum())\n", " year.append(week2.year)\n", "yearly_incidence = pd.Series(data=yearly_incidence, index=year)\n", "\n", "yearly_incidence.plot(style='*')\n", "\n", "yearly_incidence.sort_values()\n", "\n", "yearly_incidence.hist(xrot=20)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "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.6.4" } }, "nbformat": 4, "nbformat_minor": 4 }