{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Load all the codes" ] }, { "cell_type": "code", "collapsed": false, "input": [ "from SPARQLWrapper import SPARQLWrapper, JSON\n", "from rdflib import ConjunctiveGraph, Namespace, Literal, RDF, RDFS, BNode, URIRef, XSD, Variable\n", "import operator\n", "import numpy as np\n", "import networkx as nx\n", "import matplotlib.pyplot as plt\n", "import urllib2, StringIO, csv\n", "import re\n", "%matplotlib inline\n", "NG_TEMPLATE = 'http://lod.cedar-project.nl/resource/r1/CUBE'\n", "END_POINT = 'http://lod.cedar-project.nl:8080/sparql/cedar'\n", "# Load cube names\n", "url = 'https://raw.githubusercontent.com/cgueret/Harmonize/master/cubes.txt'\n", "cubes = [cube.strip() for cube in StringIO.StringIO(urllib2.urlopen(url).read())]\n", "# Load list of occupations\n", "url = 'https://raw.githubusercontent.com/cgueret/Harmonize/master/codes/occupation.csv'\n", "reader = csv.reader(StringIO.StringIO(urllib2.urlopen(url).read()))\n", "occupation_codes = set()\n", "header_row = True\n", "for row in reader:\n", " # Skip the header\n", " if header_row:\n", " header_row = False\n", " continue\n", " # Skip empty lines\n", " if len(row) != 2:\n", " continue\n", " try:\n", " occupation_codes.add(str(row[1].replace('http://cedar.example.org/ns#hisco-','')))\n", " except:\n", " pass\n", "print \"Total number of codes %d \" % len(occupation_codes)\n", "# Load the list of target codes\n", "target_codes = set()\n", "url = 'https://raw.githubusercontent.com/cgueret/CEDAR-Analysis/master/modern_hisco_2.txt'\n", "lines = [line.strip() for line in StringIO.StringIO(urllib2.urlopen(url).read())]\n", "for line in lines:\n", " if line.startswith('HISCO'):\n", " continue\n", " if len(line) < 2:\n", " continue\n", " target = str(line.split(' ')[0])\n", " for occupation in occupation_codes:\n", " if occupation.startswith(target):\n", " target_codes.add(occupation)\n", "print \"Target codes %d \" % len(target_codes)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Total number of codes 1014 \n", "Target codes 220 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n" ] } ], "prompt_number": 24 }, { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Get the raw data" ] }, { "cell_type": "code", "collapsed": false, "input": [ "observations = {}\n", "for code in target_codes:\n", " for cube in cubes:\n", " named_graph = NG_TEMPLATE.replace('CUBE', cube)\n", " sparql = SPARQLWrapper(END_POINT)\n", " query = \"\"\"\n", " prefix cedar: \n", " prefix qb: \n", " \n", " select (sum(?s) as ?total) ?year from where {\n", " ?o a qb:Observation.\n", " ?o cedar:occupation cedar:hisco-CODE.\n", " ?o cedar:populationSize ?s.\n", " ?o qb:dataSet ?ds.\n", " ?ds a qb:DataSet.\n", " ?ds cedar:censusYear ?year.\n", " }\n", " \"\"\".replace('GRAPH',named_graph).replace('CODE', code)\n", " sparql.setQuery(query)\n", " sparql.setReturnFormat(JSON)\n", " results = sparql.query().convert()[\"results\"][\"bindings\"]\n", " for result in results:\n", " if 'total' in result and 'year' in result:\n", " total = int(result['total']['value'])\n", " year = str(result['year']['value'])\n", " observations.setdefault(year, {})\n", " observations[year].setdefault(code, 0)\n", " observations[year][code] += total\n", "print observations" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "{'1859': {'37030': 11670, '92290': 143, '75465': 1, '74220': 1723, '83320': 926, '87105': 6755, '92250': 1, '38040': 1, '74470': 1011, '75145': 3, '74100': 222, '02230': 1943, '73240': 188, '93960': 2339, '03510': 1, '96930': 122}, '1849': {'74990': 2457, '36000': 7074, '37030': 17427, '92290': 300, '74220': 2880, '83320': 744, '87105': 13596, '87340': 600, '74470': 2451, '96930': 300, '74100': 966, '02230': 3854, '73240': 675, '93960': 2922, '74290': 75, '03510': 4964, '87330': 29151, '75145': 10658}, '1920': {'84100': 28073, '98500': 28523, '85510': 26758, '98320': 28214, '98330': 26908, '87350': 5524, '87120': 13846, '16310': 1160, '87330': 10962}, '1930': {'74990': 67, '56030': 79, '96910': 48, '90100': 27, '98500': 2153, '98220': 152, '87190': 9, '84990': 48, '97390': 22, '87120': 11, '16310': 181, '85920': 6, '96930': 41, '92730': 41, '37090': 96, '74140': 8, '84410': 15, '95960': 13, '83520': 417, '56060': 34, '98320': 157, '32220': 70, '75465': 19, '84190': 70, '85345': 99, '37040': 228, '36040': 76, '92220': 27, '98300': 60, '87210': 478, '95690': 27, '81290': 10, '87310': 70, '98550': 80, '87350': 129, '97440': 55, '92130': 55, '96940': 39, '38040': 241, '75145': 41, '87340': 165, '87330': 367, '04125': 28, '37030': 18, '92225': 14, '92330': 9, '84100': 5001, '38000': 117, '92250': 45, '85510': 133, '98330': 96, '36000': 119, '83450': 99, '90200': 75}, '1899': {'74990': 3108, '92290': 267, '96910': 18, '90100': 327, '98500': 27839, '79630': 780, '84910': 18, '83465': 36, '84990': 897, '74241': 72, '74470': 2049, '87120': 45, '87260': 291, '83410': 3, '96930': 18, '84975': 99, '98590': 9, '74140': 72, '74220': 48, '74490': 30, '87105': 18, '92530': 513, '83520': 18, '97355': 7980, '87350': 1746, '96100': 176, '74925': 2760, '75465': 1473, '71130': 6, '37040': 1395, '85110': 588, '98420': 9, '84320': 15, '83360': 225, '84980': 12, '83320': 3525, '84190': 12, '85600': 264, '84390': 582, '75145': 6, '93960': 2805, '87340': 6, '87330': 954, '77930': 2451, '74100': 108, '84150': 111, '84100': 32399, '74130': 9, '84105': 30, '38000': 3, '92250': 108, '85510': 63, '83530': 6, '98330': 189, '36000': 17211, '83490': 6, '83450': 18, '87110': 129, '90200': 69}, '1889': {'74990': 8626, '92290': 317, '85490': 69, '98500': 37063, '74100': 849, '98220': 12, '84990': 173, '74241': 327, '74470': 1908, '84150': 513, '87120': 30, '16310': 483, '03510': 248, '96930': 219, '90100': 482, '84975': 167, '37090': 511, '74220': 2390, '87105': 31, '92530': 211, '37000': 243, '97355': 62, '96100': 183, '74925': 8336, '75465': 1469, '84190': 114, '37040': 44, '85110': 12, '84320': 88, '87190': 33, '81205': 34, '87350': 3, '85600': 199, '84900': 3, '38040': 5097, '96925': 12, '73240': 155, '93960': 1005, '87330': 1167, '84145': 83, '92225': 15, '74230': 126, '97390': 90, '84100': 6832, '87110': 450, '84105': 172, '38000': 975, '77930': 7721, '85510': 0, '83530': 48, '84160': 22}, '1909': {'79630': 553, '84990': 15308, '75150': 5, '96930': 13, '74140': 4, '83520': 9, '97310': 20, '37040': 1646, '97160': 5, '84980': 25, '84900': 5, '74400': 116, '87330': 185, '84100': 62068, '77440': 21, '83530': 47, '74490': 5207, '90200': 315, '96910': 8, '98500': 58501, '84910': 119, '74241': 0, '16310': 398, '94330': 159, '84975': 3053, '92530': 49, '85320': 4, '74920': 4, '74925': 20100, '36040': 1510, '75520': 68, '87310': 10, '74500': 288, '92130': 2, '74230': 853, '87120': 8, '74130': 0, '77930': 9921, '74990': 14576, '92290': 65, '92510': 25, '74100': 911, '03510': 308, '74220': 1002, '97355': 7309, '96100': 1671, '84340': 15, '84190': 348, '36020': 4176, '85110': 10461, '87370': 436, '98430': 0, '85600': 454, '98000': 35, '74290': 11, '75465': 6684, '81205': 685, '84150': 272, '85590': 10, '84105': 1385, '99930': 2, '85510': 302, '95620': 21, '87260': 45, '90100': 955, '74470': 1723, '74570': 32, '83410': 12, '36000': 29938, '87105': 119, '98320': 396, '74000': 20, '84175': 4, '83465': 2, '84170': 44, '84320': 56, '95690': 5, '98555': 38, '87350': 13, '84390': 5869, '93960': 2715, '87110': 6417, '98330': 2, '84165': 85, '84162': 8, '84160': 338}, '1869': {'37030': 2, '83320': 2, '84190': 1, '87105': 7, '99930': 15, '74925': 1, '75145': 5, '74100': 2, '16310': 1, '37040': 1, '93960': 4}}\n" ] } ], "prompt_number": 28 }, { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Plot the evolution of modern occupations" ] }, { "cell_type": "code", "collapsed": false, "input": [ "agg = {}\n", "for (year, data) in observations.iteritems():\n", " for (code, count) in data.iteritems():\n", " agg.setdefault(year, 0)\n", " agg[year] += count\n", "print agg" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "{'1859': 27049, '1849': 101094, '1920': 169968, '1930': 11785, '1899': 114024, '1889': 89422, '1909': 280607, '1869': 41}\n" ] } ], "prompt_number": 30 }, { "cell_type": "code", "collapsed": false, "input": [ "data_years = []\n", "data_counts = []\n", "for year in sorted(agg.keys()):\n", " data_years.append(year)\n", " data_counts.append(agg[year])\n", " print year, agg[year]" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1849 101094\n", "1859 27049\n", "1869 41\n", "1889 89422\n", "1899 114024\n", "1909 280607\n", "1920 169968\n", "1930 11785\n" ] } ], "prompt_number": 35 }, { "cell_type": "code", "collapsed": false, "input": [ "plt.plot(data_years, data_counts, alpha=0.5)\n", "plt.scatter(data_years, data_counts, alpha=0.5)\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 34 }, { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Look at an occupation in particular" ] }, { "cell_type": "code", "collapsed": false, "input": [ "data_years = []\n", "data_counts = []\n", "for year in sorted(observations.keys()):\n", " data = observations[year]\n", " total = 0\n", " for (code, count) in data.iteritems():\n", " if code.startswith('21110'):\n", " total += count\n", " data_years.append(year)\n", " data_counts.append(total)\n", " print year, total\n", "plt.plot(data_years, data_counts, alpha=0.5)\n", "plt.scatter(data_years, data_counts, alpha=0.5)\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1849 0\n", "1859 0\n", "1869 0\n", "1889 0\n", "1899 0\n", "1909 0\n", "1920 0\n", "1930 0\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 43 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }