{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "import pandas\n", "\n", "import datetime\n", "import time\n", "\n", "import mx.DateTime\n", "\n", "import numpy as np\n", "\n", "import pytz\n", "\n", "import dateutil\n" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 13 }, { "cell_type": "code", "collapsed": false, "input": [ "# constructing\n", "\n", "# time type\n", "time.gmtime(0) # time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)\n", "time.struct_time((2000,1,13,0,0,0,0,0,0))\n", "time.strptime('2000-01-13', '%Y-%m-%d')\n", "\n", "# Default type\n", "datetime.datetime.fromtimestamp(0) # 1970-01-01\n", "datetime.datetime.fromordinal(1) # 0001-01-01\n", "datetime.datetime(2000,1,13)\n", "datetime.datetime.strptime('2000-01-13', '%Y-%m-%d')\n", "\n", "# egenix \n", "mx.DateTime.DateTimeFromTicks(0) # 1970-01-01\n", "mx.DateTime.DateTimeFromAbsDays(0) # 0001-01-01\n", "mx.DateTime.DateTimeFrom('2000-01-13')\n", "mx.DateTime.DateTime(2000,1,13)\n", "\n", "# numpy\n", "np.datetime64(0,'s') # 1970-01-01 \n", "np.datetime64('2000-01-13')\n", "\n" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 14, "text": [ "numpy.datetime64('2000-01-13')" ] } ], "prompt_number": 14 }, { "cell_type": "code", "collapsed": false, "input": [ "sys.getsizeof(time.strptime('2000-01-13', '%Y-%m-%d')) # 96\n", "sys.getsizeof(datetime.datetime.strptime('2000-01-13', '%Y-%m-%d')) # 48\n", "sys.getsizeof(mx.DateTime.DateTimeFrom('2000-01-13')) # 72\n", "sys.getsizeof(np.datetime64('2000-01-13')) # 40\n", "\n" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 15, "text": [ "32" ] } ], "prompt_number": 15 }, { "cell_type": "code", "collapsed": false, "input": [ "# Difficult dates\n", "\n", "# Year 0 does not exist:\n", "# Year zero does not exist in the Anno Domini system usually used to number years in the Gregorian calendar\n", "# and in its predecessor, the Julian calendar. In this system, the year 1 BC is followed by AD 1. However, \n", "# there is a year zero in astronomical year numbering (where it coincides with the Julian year 1 BC) and \n", "# in ISO 8601:2004 (where it coincides with the Gregorian year 1 BC) as well as in all Buddhist and Hindu \n", "# calendars.\n", "\n", "\n", "# Since negative years and the year 0 don't fit well with the Gregorian or Julian calendars, the normal \n", "# ranges of dates start with year 1. The ISO C standard allows tm_year to assume values corresponding to \n", "# years before year 1, but the use of such years provided unspecified results.)\n", "\n", "#time.strptime('0000-01-01', '%Y-%m-%d')\n", "#datetime.datetime.strptime('0000-01-01', '%Y-%m-%d')\n", "mx.DateTime.DateTimeFrom('0000-01-01')\n", "#np.datetime64('0000-01-01')\n" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 16, "text": [ "" ] } ], "prompt_number": 16 }, { "cell_type": "code", "collapsed": false, "input": [ "time.struct_time((-1,1,1,0,0,0,0,0,0))\n", "# datetime.datetime(-1,1,1) # nope\n", "mx.DateTime.DateTime(-1,1,1)\n", "# np.datetime64('-0001-01-01') # nope" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 17, "text": [ "" ] } ], "prompt_number": 17 }, { "cell_type": "code", "collapsed": false, "input": [ "#time.strptime('20000-01-01', '%Y-%m-%d')\n", "#datetime.datetime.strptime('20000-01-01', '%Y-%m-%d')\n", "#mx.DateTime.DateTimeFrom('20000-01-01')\n", "#np.datetime64('20000-01-01')" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 18 }, { "cell_type": "code", "collapsed": false, "input": [ "time.struct_time((20000,1,1,0,0,0,0,0,0))\n", "# datetime.datetime(20000,1,1) # nope\n", "mx.DateTime.DateTime(20000,1,1)\n", "# np.array('200000-01-01', 'M8[D]') # nope" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 19, "text": [ "" ] } ], "prompt_number": 19 }, { "cell_type": "code", "collapsed": false, "input": [ "utc = pytz.timezone('UTC')\n", "gmt = pytz.timezone('GMT')\n", "ams = pytz.timezone('Europe/Amsterdam')" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 20 }, { "cell_type": "code", "collapsed": false, "input": [ "rows = []\n", "for date, transinfo in zip(ams._utc_transition_times, ams._transition_info):\n", " dateutc = date.replace(tzinfo=utc)\n", " row = {'utc': dateutc,\n", " 'ams': dateutc.astimezone(ams),\n", " 'diff': dateutc.astimezone(ams).replace(tzinfo=utc) - dateutc,\n", " 'name': transinfo[2]}\n", " \n", " rows.append(row)\n", " \n", "\n" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 21 }, { "cell_type": "code", "collapsed": false, "input": [ "df = pandas.DataFrame.from_records(rows)\n", "df['diff_minutes'] = df['diff'].apply(lambda x:60.0*x/(3600.0*1.0e9))\n", "df = df.ix[1:]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 22 }, { "cell_type": "code", "collapsed": false, "input": [ "fig, ax = plt.subplots(figsize=(20,5))\n", "ax.plot_date(matplotlib.dates.date2num(df['utc']), df['diff_minutes'], drawstyle='steps', linestyle='-', marker='', color='#009999', linewidth=3)\n", "ax.set_xlim(matplotlib.dates.date2num(datetime.datetime(1900,1,1)), matplotlib.dates.date2num(datetime.datetime(2015,1,1)))\n", "ax.set_xlabel('date')\n", "ax.set_ylabel('minutes to UTC')\n", "ax.set_title('Europe/Amsterdam')\n", "arrowprops=dict(facecolor='black', shrink=0.1)\n", "\n", "for name in set(df.name):\n", " row = df[df.name == name].irow(0)\n", " x = matplotlib.dates.date2num(row['ams'])\n", " y = row['diff_minutes']\n", " ax.annotate(name, xy=(x,y), xytext=(x+3000, y+10 if row['diff_minutes'] > 30 else y-10), arrowprops=arrowprops)\n", " " ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "iVBORw0KGgoAAAANSUhEUgAABI4AAAFmCAYAAAALRNHRAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd4VGX+/vF7JoUUAiFEikASQgqEIqArRUCQqiAWQJde\nguvP7iqCIoKAoiK6rosoSxcERQFRBAtNjaAgfSmhpYCEgECAkJ6c3x+7zJfATApkTibJ+3VdXJfn\nzDPP+czInQmfmecZi2EYhgAAAAAAAICrWEu7AAAAAAAAALgmGkcAAAAAAACwi8YRAAAAAAAA7KJx\nBAAAAAAAALtoHAEAAAAAAMAuGkcAAAAAAACwy720CwAAAKVv7969GjNmjNLS0pSamqp77rlHQ4cO\n1S233KJbb70139j169crIyNDjz32mJKSkpSWlqZatWpp5syZ2rZtm6ZMmSJJ+uWXX3THHXdIkt55\n5x21bNnS9McFAACAG2MxDMMo7SIAAEDpSUlJUYcOHbRixQo1aNBAeXl56tevn7p166b58+dr8+bN\n19xnxowZOnbsmN544w1J0j//+U/FxcXpvffes42pXbu2kpKSTHscAAAAKHksVQMAoIJbuXKlOnfu\nrAYNGkiSrFarPv74Y911110O71OrVi19//33WrVqlS5cuKCnnnpK77zzjlklAwAAwCQsVQMAoIJL\nSkpS/fr1853z9fWVh4eH9u3bp06dOtnO33rrrZo2bZoefPBBWSwWzZkzR8OGDVPTpk31r3/9S02a\nNDG7fAAAADgRjSMAACq44OBgbd++Pd+5+Ph4JSYmKioqShs2bLjmPps3b1aXLl30wAMPyDAMffzx\nxxo2bJh+//13s8oGAACACViqBgBABderVy99++23Onr0qCQpOztbzz33nPbu3evwPp9++qltPyOL\nxaKmTZvKy8vLlHoBAABgHjbHBgAA2r59u1544QXl5eXp4sWL6t27t4YMGaJbbrnlmm9Dmz9/vqpX\nr64nn3xSu3btkq+vr3x9ffX+++8rMjLSNu7mm2/WiRMnzH4oAAAAKEE0jgAAAAAAAGAXS9UAAAAA\nAABgF40jAADKodzcXMXFxbFUDAAAADeExhEAAOVETk6ODh8+rDVr1mjcuHFq06aNduzYUdplAQAA\noAxzL+0CAADA9cvOztbRo0d16NAhrVu3TgsXLtSZM2dst2/cuFHdu3eXuzsv+QAAACg+NscGAKAM\n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\nTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 37 } ], "metadata": {} } ] }