{
 "metadata": {
  "name": "",
  "signature": "sha256:ae9d946cd4ea747f01c5b3e3b3dfe67aa31f1668a6d456374b7a2de033379512"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from collections import defaultdict, OrderedDict\n",
      "import copy\n",
      "import inspect\n",
      "import json\n",
      "import pysal as package\n",
      "from ast import literal_eval\n",
      "\n",
      "import docutils\n",
      "from docutils.core import publish_doctree\n",
      "import xml.etree.ElementTree as etree\n",
      "package.version"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 1,
       "text": [
        "'1.10.0-dev'"
       ]
      }
     ],
     "prompt_number": 1
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "def getFromDict(dataDict, mapList):\n",
      "    return reduce(lambda d, k: d[k], mapList, dataDict)\n",
      "\n",
      "def setInDict(dataDict, mapList, value):\n",
      "    d = dataDict\n",
      "    for k in mapList[:-1]:\n",
      "        if not k in d.keys():\n",
      "            d[k] = {}\n",
      "        d = d[k]\n",
      "    getFromDict(dataDict, mapList[:-1])[mapList[-1]] = value\n",
      "    \n",
      "def recursive_extract(package, d, packagename, visited):\n",
      "    sub_modules = inspect.getmembers(package, inspect.ismodule)\n",
      "    functions = inspect.getmembers(package, inspect.isfunction)\n",
      "    classes = inspect.getmembers(package, inspect.isclass)\n",
      "\n",
      "    for classname, classobj in classes:\n",
      "        modulepath = classobj.__module__.split('.')\n",
      "        modulepath.append(classobj.__name__)\n",
      "        if modulepath[0] in packagename:\n",
      "            if classobj.__name__.startswith('_'):\n",
      "                continue\n",
      "            setInDict(d, modulepath[1:], classobj)\n",
      "    \n",
      "    for funcname, funcobj in functions:\n",
      "        modulepath = funcobj.__module__.split('.')\n",
      "        modulepath.append(funcobj.__name__)\n",
      "        if modulepath[0] in packagename:\n",
      "            if funcobj.__name__.startswith('_'):\n",
      "                continue\n",
      "            setInDict(d, modulepath[1:], funcobj)\n",
      "    \n",
      "    for modulename, submodule in sub_modules:\n",
      "        modulepath = submodule.__name__.split('.')\n",
      "        if modulepath[0] in packagename and submodule not in visited:\n",
      "            visited.add(submodule)\n",
      "            recursive_extract(submodule, d, packagename, visited)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 2
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "psfuncs = {}\n",
      "visited = set()\n",
      "recursive_extract(package, psfuncs, package.__name__, visited)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 3
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "sphinxmapper = {'term':'name',\n",
      "                'classifier':'type',\n",
      "                'paragraph':'description', \n",
      "                'definition':'name'}\n",
      "\n",
      "def recursive_documentation(d):\n",
      "    for k, v in d.iteritems():\n",
      "        if isinstance(v, dict):\n",
      "            recursive_documentation(v)\n",
      "        else:\n",
      "            d[k] = generate_docs(v)\n",
      "                #if d[k] is None:\n",
      "                    #print 'No documentation for {}'.format(k)\n",
      "            #except:\n",
      "                #d[k] = {'status':'error', 'description': 'Unable to generate documentation.' }\n",
      "                #print 'Failed to extract: ', k\n",
      "            \n",
      "def getargorder(call):\n",
      "    \"\"\"\n",
      "    Get the order of required args from a function.\n",
      "    Does not support *args currently.\n",
      "    \"\"\"\n",
      "    try:\n",
      "        argorder = inspect.getargspec(call)[0]\n",
      "    except:\n",
      "        argorder = inspect.getargspec(call.__init__)[0][1:]  #ignore self\n",
      "    return argorder\n",
      "\n",
      "\n",
      "def generate_docs(v):\n",
      "    docs = inspect.getdoc(v)\n",
      "    if docs is None:\n",
      "        print \"{} ERROR: No documentation.\".format(v.__name__)\n",
      "        return None\n",
      "\n",
      "    response_template = {'status':'success',\n",
      "                'arguments':{'optional_arguments':{},\n",
      "                'required_arguments':{}},\n",
      "                'description':None,\n",
      "                'doc_href':None,\n",
      "                'methods':['GET', 'POST'],\n",
      "                'name':v.__name__,\n",
      "                'response':{}}\n",
      "    \n",
      "    if not inspect.isclass(v):\n",
      "        reqargs = inspect.getargspec(v)\n",
      "        classtype = False\n",
      "    elif inspect.isclass(v):\n",
      "        '''\n",
      "        I believe this has to be a try/except, because an if based hasattr(v, __init__)\n",
      "        will fail because the object dict can have an __init__, but inspect does what\n",
      "        we want it to and looks to the class that instantiates the object.  That class may\n",
      "        not have an __init__ or the __init__ could be written in C.\n",
      "        '''\n",
      "        try:\n",
      "            reqargs = inspect.getargspec(v.__init__)\n",
      "            classtype = True\n",
      "        except:\n",
      "            print \"{} ERROR: Class has no init method.  Unsupported doc parsing.\".format(v.__name__)\n",
      "            return\n",
      "    else:\n",
      "        print \"{} ERROR: Unable to determine class or function\".format(v.__name__)\n",
      "        return\n",
      "    \n",
      "    args = reqargs.args\n",
      "\n",
      "    if reqargs.defaults != None:\n",
      "        defaults = list(reqargs.defaults)\n",
      "    else:\n",
      "        defaults = None\n",
      "\n",
      "    if classtype == True:\n",
      "        args.remove('self')\n",
      "\n",
      "    argtype = OrderedDict()\n",
      "    for a in args:\n",
      "        argtype[a] = {'name':a, 'chain_name':'{}_href'.format(a),\n",
      "                      'type':'Unknown', 'description':'None'}\n",
      "    try:\n",
      "        doctree = publish_doctree(docs).asdom()\n",
      "        doctree = etree.fromstring(doctree.toxml())\n",
      "    except:\n",
      "        print \"ERROR: Docutils error in {}\".format(v.__name__)\n",
      "        return None\n",
      "\n",
      "    response_template['description'] = doctree[0].text\n",
      "    sections = doctree.findall('section')\n",
      "\n",
      "    parameters = {}\n",
      "    attributes = {}\n",
      "    documentation_extraction = {}\n",
      "    for sub in doctree.findall('section'):\n",
      "        key = sub.attrib['names']\n",
      "        documentation_extraction[key] = {}\n",
      "        for i in sub.findall('definition_list'):\n",
      "            for j in i.findall('definition_list_item'):\n",
      "                currententry = j.getchildren()[0].text\n",
      "                if key == 'parameters':\n",
      "                    documentation_extraction[key][currententry] = {'chain_name':'{}_href'.format(currententry),\n",
      "                                                                   'name':'{}'.format(currententry)}\n",
      "                else:\n",
      "                    documentation_extraction[key][currententry] = {}\n",
      "                for var in j.getchildren()[1:]:\n",
      "                    if var.tag == 'definition':\n",
      "                        documentation_extraction[key][currententry]['description'] = var.getchildren()[0].text\n",
      "                    else:\n",
      "                        if var.text[0] == '{':\n",
      "                            pythonliteral = eval(var.text)\n",
      "                            selectiontype = type(iter(pythonliteral).next())\n",
      "                            if selectiontype == str:\n",
      "                                selectiontype = 'string'\n",
      "                            documentation_extraction[key][currententry]['type'] = selectiontype\n",
      "                            documentation_extraction[key][currententry]['selection'] = var.text\n",
      "                        else:\n",
      "                            documentation_extraction[key][currententry]['type'] = var.text\n",
      "    \n",
      "    if 'attributes' in documentation_extraction.keys():\n",
      "        response_template['response'] = documentation_extraction['attributes']\n",
      "    elif 'returns' in documentation_extraction.keys():\n",
      "        response_template['response'] = documentation_extraction['returns']\n",
      "    else:\n",
      "        response_template['response'] = 'Neither class attributes nor return values defined'\n",
      "    \n",
      "    #Check for the parameters keyword. If it is not present, doc is likley not numpydoc compliant\n",
      "    if not 'parameters' in documentation_extraction.keys():\n",
      "        print \"{} ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\".format(v.__name__)\n",
      "        return None\n",
      "    \n",
      "    try:\n",
      "        nargs = len(reqargs.args)\n",
      "    except:\n",
      "        nargs = 0\n",
      "\n",
      "    try:\n",
      "        ndef = len(reqargs.defaults)\n",
      "    except:\n",
      "        ndef = 0\n",
      "    #Classify parameters as optional or required, fill in defaults.\n",
      "    #try:\n",
      "    nrequired = nargs - ndef\n",
      "    cdict = response_template['arguments']['required_arguments']\n",
      "    for i in reqargs.args[:nrequired]:\n",
      "        if i in documentation_extraction['parameters'].keys():\n",
      "            cdict[i] = documentation_extraction['parameters'][i]\n",
      "        else:\n",
      "            print \"{} ERROR: {} in parameter list, but not in doc string\".format(v.__name__, i)\n",
      "            \n",
      "    cdict = response_template['arguments']['optional_arguments']\n",
      "    for c, i in enumerate(reqargs.args[nrequired:]):\n",
      "        if i in documentation_extraction['parameters'].keys():\n",
      "            cdict[i] = documentation_extraction['parameters'][i]\n",
      "            cdict[i]['default'] = reqargs.defaults[c]\n",
      "        else:\n",
      "            print \"{} ERROR: {} in parameter list, but not in doc string\".format(v.__name__, i)\n",
      "    #except:\n",
      "        #print \"{}: Misalignment / Error in arguments.\".format(v)\n",
      "        #response_template = {'status':'error', 'description':'Unable to parse arguments'}\n",
      "\n",
      "    return response_template\n",
      "\n",
      "psdocs = copy.deepcopy(psfuncs)\n",
      "recursive_documentation(psdocs)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "SpaceTimeEvents ERROR: time_col in parameter list, but not in doc string\n",
        "ERROR: Docutils error in SpatialTau"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "pseudop ERROR: No documentation."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:19: (ERROR/3) Unknown target name: \"3\".\n",
        "<string>:72: (ERROR/3) Error parsing content block for the \"Table\" directive: exactly one table expected.\n",
        "\n",
        ".. Table:: Significant Moves\n",
        "\n",
        "                   ===============  ===================\n",
        "                   (s1,s2)          move_type\n",
        "                   ===============  ===================\n",
        "                   (1,1)            [1, 16]\n",
        "                   (1,0)            [17, 32]\n",
        "                   (0,1)            [33, 48]\n",
        "                   (0,0)            [49, 64]\n",
        "                   ===============  ===================\n",
        "\n",
        "\n",
        "                   == ==  ==  ==  =========\n",
        "                   q1 q2  s1  s2  move_type\n",
        "                   == ==  ==  ==  =========\n",
        "                    1  1   1   1   1\n",
        "                    1  2   1   1   2\n",
        "                    1  3   1   1   3\n",
        "                    1  4   1   1   4\n",
        "                    2  1   1   1   5\n",
        "                    2  2   1   1   6\n",
        "                    2  3   1   1   7\n",
        "                    2  4   1   1   8\n",
        "                    3  1   1   1   9\n",
        "                    3  2   1   1   10\n",
        "                    3  3   1   1   11\n",
        "                    3  4   1   1   12\n",
        "                    4  1   1   1   13\n",
        "                    4  2   1   1   14\n",
        "                    4  3   1   1   15\n",
        "                    4  4   1   1   16\n",
        "                    1  1   1   0   17\n",
        "                    1  2   1   0   18\n",
        "                    .  .   .   .    .\n",
        "                    .  .   .   .    .\n",
        "                    4  3   1   0   31\n",
        "                    4  4   1   0   32\n",
        "                    1  1   0   1   33\n",
        "                    1  2   0   1   34\n",
        "                    .  .   .   .    .\n",
        "                    .  .   .   .    .\n",
        "                    4  3   0   1   47\n",
        "                    4  4   0   1   48\n",
        "                    1  1   0   0   49\n",
        "                    1  2   0   0   50\n",
        "                    .  .   .   .    .\n",
        "                    .  .   .   .    .\n",
        "                    4  3   0   0   63\n",
        "                    4  4   0   0   64\n",
        "                   == ==  ==  ==  =========\n",
        "\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "MultiPoint ERROR: No documentation."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "NullShape ERROR: No documentation.\n",
        "shp_file ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "Polygon ERROR: Class has no init method.  Unsupported doc parsing.\n",
        "struct2arrayinfo ERROR: No documentation.\n",
        "MultiPointM ERROR: No documentation.\n",
        "MultiPatch ERROR: No documentation.\n",
        "Point ERROR: Class has no init method.  Unsupported doc parsing.\n",
        "PolyLineZ ERROR: No documentation.\n",
        "PointM ERROR: No documentation.\n",
        "PolyLineM ERROR: No documentation.\n",
        "PolygonM ERROR: No documentation.\n",
        "PolyLine ERROR: Class has no init method.  Unsupported doc parsing.\n",
        "noneMin ERROR: No documentation.\n",
        "MultiPointZ ERROR: No documentation.\n",
        "PolygonZ ERROR: No documentation.\n",
        "PointZ ERROR: No documentation.\n",
        "shx_file ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "noneMax ERROR: No documentation.\n",
        "WeightConverter ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "weight_convert ERROR: inPath in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "weight_convert ERROR: outPath in parameter list, but not in doc string\n",
        "weight_convert ERROR: inDataFormat in parameter list, but not in doc string\n",
        "weight_convert ERROR: outDataFormat in parameter list, but not in doc string\n",
        "weight_convert ERROR: useIdIndex in parameter list, but not in doc string\n",
        "weight_convert ERROR: matrix_form in parameter list, but not in doc string\n",
        "WKTParser ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "DBF ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "MtxIO ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "StataTextIO ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "MatIO ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "ArcGISSwmIO ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GalIO ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "GeoDaTxtReader ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "DatIO ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "unique_filter ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "GwtIO ERROR: No documentation.\n",
        "PurePyShpWrapper ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GeoBUGSTextIO ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Wk1IO ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "ArcGISDbfIO ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "csvWrapper ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "ArcGISTextIO ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "FileIO ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "FileIO_MetaCls ERROR: Class has no init method.  Unsupported doc parsing.\n",
        "DataTable ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "nearest_neighbor_search ERROR: No documentation.\n",
        "compute_length ERROR: v0 in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "compute_length ERROR: v1 in parameter list, but not in doc string\n",
        "generatetree ERROR: No documentation.\n",
        "dijkstra ERROR: ntw in parameter list, but not in doc string\n",
        "dijkstra ERROR: cost in parameter list, but not in doc string\n",
        "dijkstra ERROR: node in parameter list, but not in doc string\n",
        "dijkstra ERROR: n in parameter list, but not in doc string\n",
        "nearestneighborsearch ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "cumulativedistances ERROR: No documentation.\n",
        "shortest_path ERROR: No documentation.\n",
        "get_neighbor_distances ERROR: No documentation.\n",
        "SortedEdges ERROR: No documentation."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "SimulatedPointPattern ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "NetworkK ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "NetworkF ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:3: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:9: (ERROR/3) Unexpected indentation.\n",
        "<string>:10: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:11: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "NetworkG ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "gfunction ERROR: nearest in parameter list, but not in doc string\n",
        "gfunction ERROR: lowerbound in parameter list, but not in doc string\n",
        "gfunction ERROR: upperbound in parameter list, but not in doc string\n",
        "gfunction ERROR: nsteps in parameter list, but not in doc string\n",
        "kfunction ERROR: No documentation.\n",
        "NetworkBase ERROR: No documentation.\n",
        "ffunction ERROR: No documentation.\n",
        "Graph ERROR: No documentation."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "is_component ERROR: w in parameter list, but not in doc string\n",
        "Arc_KDTree ERROR: No documentation.\n",
        "KDTree ERROR: No documentation.\n",
        "union_all ERROR: No documentation.\n",
        "Rtree ERROR: No documentation.\n",
        "avg_diagonals ERROR: No documentation.\n",
        "closest ERROR: No documentation.\n",
        "RTree ERROR: No documentation.\n",
        "center_of_gravity ERROR: No documentation.\n",
        "silhouette_coeff ERROR: No documentation.\n",
        "silhouette_w ERROR: No documentation.\n",
        "k_means_cluster ERROR: No documentation.\n",
        "Rect ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "get_angle_between ERROR: ray1 in parameter list, but not in doc string\n",
        "get_angle_between ERROR: ray2 in parameter list, but not in doc string\n",
        "get_point_at_angle_and_dist ERROR: ray in parameter list, but not in doc string\n",
        "get_point_at_angle_and_dist ERROR: angle in parameter list, but not in doc string\n",
        "get_point_at_angle_and_dist ERROR: dist in parameter list, but not in doc string\n",
        "get_points_dist ERROR: pt1 in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_points_dist ERROR: pt2 in parameter list, but not in doc string\n",
        "get_polygon_point_dist ERROR: poly in parameter list, but not in doc string\n",
        "get_polygon_point_dist ERROR: pt in parameter list, but not in doc string\n",
        "get_segment_point_dist ERROR: seg in parameter list, but not in doc string\n",
        "get_segment_point_dist ERROR: pt in parameter list, but not in doc string\n",
        "bbcommon ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "get_rectangle_rectangle_intersection ERROR: r0 in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_rectangle_rectangle_intersection ERROR: r1 in parameter list, but not in doc string\n",
        "get_rectangle_rectangle_intersection ERROR: checkOverlap in parameter list, but not in doc string\n",
        "get_polygon_point_intersect ERROR: poly in parameter list, but not in doc string\n",
        "get_polygon_point_intersect ERROR: pt in parameter list, but not in doc string\n",
        "ccw ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "point_touches_rectangle ERROR: point in parameter list, but not in doc string\n",
        "point_touches_rectangle ERROR: rect in parameter list, but not in doc string\n",
        "get_segments_intersect ERROR: seg1 in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_segments_intersect ERROR: seg2 in parameter list, but not in doc string\n",
        "is_collinear ERROR: p1 in parameter list, but not in doc string\n",
        "is_collinear ERROR: p2 in parameter list, but not in doc string\n",
        "is_collinear ERROR: p3 in parameter list, but not in doc string\n",
        "get_shared_segments ERROR: poly1 in parameter list, but not in doc string\n",
        "get_shared_segments ERROR: poly2 in parameter list, but not in doc string\n",
        "get_shared_segments ERROR: bool_ret in parameter list, but not in doc string\n",
        "get_ray_segment_intersect ERROR: ray in parameter list, but not in doc string\n",
        "get_ray_segment_intersect ERROR: seg in parameter list, but not in doc string\n",
        "get_segment_point_intersect ERROR: seg in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_segment_point_intersect ERROR: pt in parameter list, but not in doc string\n",
        "convex_hull ERROR: points in parameter list, but not in doc string\n",
        "is_clockwise ERROR: vertices in parameter list, but not in doc string\n",
        "seg_intersect ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_bounding_box ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "get_rectangle_point_intersect ERROR: rect in parameter list, but not in doc string\n",
        "get_rectangle_point_intersect ERROR: pt in parameter list, but not in doc string\n",
        "asShape ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "Polygon ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Chain ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "Point ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "VerticalLine ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Line ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "Ring ERROR: vertices in parameter list, but not in doc string\n",
        "Rectangle ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Ray ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "arcdist2linear ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "linear2arcdist ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "fast_threshold ERROR: No documentation.\n",
        "toXYZ ERROR: pt in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:21: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:7: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "fast_knn ERROR: pts in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:8: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:8: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "fast_knn ERROR: k in parameter list, but not in doc string\n",
        "toLngLat ERROR: No documentation.\n",
        "harcdist ERROR: p0 in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:9: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:12: (ERROR/3) Unexpected indentation.\n",
        "<string>:10: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "harcdist ERROR: p1 in parameter list, but not in doc string\n",
        "harcdist ERROR: lonx in parameter list, but not in doc string\n",
        "<lambda> ERROR: No documentation.\n",
        "lonlat ERROR: pointslist in parameter list, but not in doc string\n",
        "geointerpolate ERROR: p0 in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:11: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:10: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "geointerpolate ERROR: p1 in parameter list, but not in doc string\n",
        "geointerpolate ERROR: t in parameter list, but not in doc string\n",
        "geogrid ERROR: pup in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "geogrid ERROR: pdown in parameter list, but not in doc string\n",
        "geogrid ERROR: k in parameter list, but not in doc string\n",
        "geogrid ERROR: lonx in parameter list, but not in doc string\n",
        "haversine ERROR: x in parameter list, but not in doc string\n",
        "brute_knn ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "radangle ERROR: p0 in parameter list, but not in doc string\n",
        "radangle ERROR: p1 in parameter list, but not in doc string\n",
        "PointLocator ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "PolygonLocator ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "BruteForcePointLocator ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "Grid ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "IntervalTree ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "Gini ERROR: x in parameter list, but not in doc string\n",
        "Gini_Spatial ERROR: x in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Gini_Spatial ERROR: w in parameter list, but not in doc string\n",
        "Kernel ERROR: ids in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "buildContiguity ERROR: polygons in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "write_gal ERROR: No documentation."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "higher_order_sp ERROR: shortest_path in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "lat2SW ERROR: criterion in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:22: (ERROR/3) Unknown target name: \"1\".\n",
        "<string>:13: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:40: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:65: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:76: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:36: (ERROR/3) Unknown interpreted text role \"class\".\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "rook_from_shapefile ERROR: idVariable in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "spw_from_gal ERROR: galfile in parameter list, but not in doc string\n",
        "kernelW_from_shapefile ERROR: function in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:14: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:61: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:67: (ERROR/3) Unknown interpreted text role \"class\".\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "knnW_from_array ERROR: array in parameter list, but not in doc string\n",
        "ContiguityWeightsPolygons ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "ContiguityWeights_binning ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "bbcommon ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "get_path ERROR: No documentation."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "TSLS_Regimes ERROR: w in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:23: (ERROR/3) Unexpected indentation.\n",
        "<string>:108: (ERROR/3) Unexpected indentation.\n",
        "<string>:20: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "TSLS_Regimes ERROR: spat_diag in parameter list, but not in doc string\n",
        "TSLS_Regimes ERROR: constant_regi in parameter list, but not in doc string\n",
        "TSLS_Regimes ERROR: summ in parameter list, but not in doc string\n",
        "RegressionPropsY ERROR: Class has no init method.  Unsupported doc parsing.\n",
        "sp_att ERROR: No documentation.\n",
        "optim_moments ERROR: moments_in in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:24: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:14: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:18: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:25: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "iter_msg ERROR: No documentation.\n",
        "RegressionProps_basic ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "power_expansion ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "set_endog ERROR: No documentation.\n",
        "foptim_par ERROR: par in parameter list, but not in doc string\n",
        "RegressionPropsVM ERROR: Class has no init method.  Unsupported doc parsing."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:6: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:9: (ERROR/3) Unexpected indentation.\n",
        "<string>:10: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:23: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "set_warn ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "set_endog_sparse ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "get_a1a2 ERROR: wA1 in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:27: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:11: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:62: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_a1a2 ERROR: P in parameter list, but not in doc string\n",
        "get_a1a2 ERROR: zs in parameter list, but not in doc string\n",
        "get_a1a2 ERROR: inv_method in parameter list, but not in doc string\n",
        "get_a1a2 ERROR: filt in parameter list, but not in doc string\n",
        "get_Omega_GS2SLS ERROR: P in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:85: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:91: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_P_hat ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:35: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:9: (WARNING/2) Literal block ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:34: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:99: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:161: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:250: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_vc_het_tsls ERROR: No documentation.\n",
        "ERROR: Docutils error in get_vc_het\n",
        "lag_c_loglik_ord ERROR: No documentation."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "lag_c_loglik ERROR: No documentation."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "set_name_yend ERROR: yend in parameter list, but not in doc string\n",
        "set_name_q_sp ERROR: name_q in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "set_name_q_sp ERROR: lag_q in parameter list, but not in doc string\n",
        "set_name_q_sp ERROR: force_all in parameter list, but not in doc string\n",
        "check_weights ERROR: w_required in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:145: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:11: (WARNING/2) Inline emphasis start-string without end-string.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "check_robust ERROR: wk in parameter list, but not in doc string\n",
        "set_name_y ERROR: name_y in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "set_name_multi ERROR: multireg in parameter list, but not in doc string\n",
        "set_name_multi ERROR: multi_set in parameter list, but not in doc string\n",
        "set_name_multi ERROR: name_multiID in parameter list, but not in doc string\n",
        "set_name_multi ERROR: y in parameter list, but not in doc string\n",
        "set_name_multi ERROR: x in parameter list, but not in doc string\n",
        "set_name_multi ERROR: name_y in parameter list, but not in doc string\n",
        "set_name_multi ERROR: name_x in parameter list, but not in doc string\n",
        "set_name_multi ERROR: name_ds in parameter list, but not in doc string\n",
        "set_name_multi ERROR: title in parameter list, but not in doc string\n",
        "set_name_multi ERROR: name_w in parameter list, but not in doc string\n",
        "set_name_multi ERROR: robust in parameter list, but not in doc string\n",
        "check_regimes ERROR: N in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:26: (ERROR/3) Unexpected indentation.\n",
        "<string>:143: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "check_regimes ERROR: K in parameter list, but not in doc string\n",
        "GM_Endog_Error_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:152: (ERROR/3) Unexpected indentation.\n",
        "<string>:186: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:191: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:27: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GM_Endog_Error_Regimes ERROR: summ in parameter list, but not in doc string\n",
        "GM_Endog_Error_Regimes ERROR: add_lag in parameter list, but not in doc string\n",
        "GM_Combo_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:163: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:172: (ERROR/3) Unexpected indentation.\n",
        "<string>:210: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:215: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:19: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GM_Error_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:124: (ERROR/3) Unexpected indentation.\n",
        "<string>:158: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:163: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:17: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "ML_Lag_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:162: (ERROR/3) Unexpected indentation.\n",
        "<string>:201: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:44: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "ML_Lag_Regimes ERROR: regime_lag_sep in parameter list, but not in doc string\n",
        "ML_Lag_Regimes ERROR: regime_err_sep in parameter list, but not in doc string\n",
        "OLS_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "likratiotest ERROR: reg0 in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:181: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:187: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:193: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:199: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:205: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:224: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:245: (ERROR/3) Unexpected indentation.\n",
        "<string>:17: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "likratiotest ERROR: reg1 in parameter list, but not in doc string\n",
        "ML_Error_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "symmetrize ERROR: w in parameter list, but not in doc string\n",
        "hac_multi ERROR: constant in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "pr2_spatial ERROR: tslsreg in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:146: (ERROR/3) Unexpected indentation.\n",
        "<string>:182: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:27: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GM_Combo_Hom_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:193: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:202: (ERROR/3) Unexpected indentation.\n",
        "<string>:241: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:245: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:20: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GM_Error_Hom_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:149: (ERROR/3) Unexpected indentation.\n",
        "<string>:183: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:187: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:27: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GM_Endog_Error_Hom_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GM_Endog_Error_Hom_Regimes ERROR: vm in parameter list, but not in doc string\n",
        "GM_Endog_Error_Hom_Regimes ERROR: summ in parameter list, but not in doc string\n",
        "GM_Endog_Error_Hom_Regimes ERROR: add_lag in parameter list, but not in doc string\n",
        "beta_diag_lag ERROR: No documentation."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "build_coefs_body_instruments ERROR: No documentation.\n",
        "GM_Combo_Hom_multi ERROR: No documentation.\n",
        "OLS ERROR: No documentation.\n",
        "GM_Endog_Error_Hom_multi ERROR: No documentation.\n",
        "summary_multi ERROR: No documentation.\n",
        "summary_sur ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "summary_spat_diag_intro ERROR: No documentation.\n",
        "GM_Combo_Het_multi ERROR: No documentation.\n",
        "TSLS ERROR: No documentation.\n",
        "summary_iteration ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "summary_intro ERROR: No documentation.\n",
        "summary_warning ERROR: No documentation.\n",
        "GM_Combo ERROR: No documentation.\n",
        "beta_diag_ols ERROR: No documentation.\n",
        "GM_Endog_Error ERROR: No documentation.\n",
        "ML_Lag ERROR: No documentation.\n",
        "OLS_multi ERROR: No documentation.\n",
        "GM_Combo_Hom ERROR: No documentation.\n",
        "GM_Combo_multi ERROR: No documentation.\n",
        "summary_vm ERROR: No documentation.\n",
        "summary_chow ERROR: No documentation.\n",
        "GM_Error_Hom_multi ERROR: No documentation.\n",
        "GM_Error ERROR: No documentation.\n",
        "GM_Endog_Error_Hom ERROR: No documentation.\n",
        "ML_Lag_multi ERROR: No documentation.\n",
        "GM_Lag_multi ERROR: No documentation.\n",
        "summary_close ERROR: No documentation.\n",
        "summary_spat_diag_probit ERROR: No documentation.\n",
        "summary_open ERROR: No documentation.\n",
        "GM_Combo_Het ERROR: No documentation.\n",
        "TSLS_multi ERROR: No documentation.\n",
        "spat_diag_instruments ERROR: No documentation.\n",
        "summary_coefs_lambda ERROR: No documentation.\n",
        "ML_Error ERROR: No documentation.\n",
        "summary_coefs_allx ERROR: No documentation.\n",
        "GM_Lag ERROR: No documentation.\n",
        "GM_Error_Het ERROR: No documentation.\n",
        "summary_coefs_intro ERROR: No documentation.\n",
        "Probit ERROR: No documentation.\n",
        "spat_diag_ols ERROR: No documentation.\n",
        "summary_spat_diag_ols ERROR: No documentation.\n",
        "GM_Error_Hom ERROR: No documentation.\n",
        "GM_Endog_Error_multi ERROR: No documentation.\n",
        "summary_pred ERROR: No documentation.\n",
        "GM_Endog_Error_Het ERROR: No documentation.\n",
        "summary_spat_diag_intro_global ERROR: No documentation.\n",
        "summary_coefs_somex ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "summary_regimes ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:175: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:184: (ERROR/3) Unexpected indentation.\n",
        "<string>:218: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:222: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:25: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GM_Endog_Error_Het_multi ERROR: No documentation.\n",
        "summary_nonspat_diag_2 ERROR: No documentation.\n",
        "summary_nonspat_diag_1 ERROR: No documentation.\n",
        "summary ERROR: No documentation.\n",
        "summary_coefs_instruments ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "summary_coefs_slopes ERROR: No documentation.\n",
        "GM_Error_multi ERROR: No documentation.\n",
        "ML_Error_multi ERROR: No documentation.\n",
        "beta_diag ERROR: No documentation.\n",
        "GM_Error_Het_multi ERROR: No documentation.\n",
        "GM_Lag_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:237: (ERROR/3) Unexpected indentation.\n",
        "<string>:275: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:5: (SEVERE/4) Unexpected section title.\n",
        "\n",
        "Parameters\n",
        "----------\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GM_Lag_Regimes ERROR: regime_lag_sep in parameter list, but not in doc string\n",
        "GM_Lag_Regimes ERROR: regime_err_sep in parameter list, but not in doc string\n",
        "ERROR: Docutils error in akTest\n",
        "LMtests ERROR: ols in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:1: (ERROR/3) Unknown target name: \"1\".\n",
        "<string>:1: (ERROR/3) Unknown target name: \"1\".\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "LMtests ERROR: w in parameter list, but not in doc string\n",
        "LMtests ERROR: tests in parameter list, but not in doc string\n",
        "get_zI ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "rlmLag ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "lmLag ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "lmErr ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "get_eI ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "get_mI ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:1: (ERROR/3) Unknown target name: \"1\".\n",
        "<string>:1: (ERROR/3) Unknown target name: \"1\".\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "lmSarma ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "rlmErr ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_vI ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "ERROR: Docutils error in spDcache"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:1: (ERROR/3) Unknown target name: \"1\".\n",
        "<string>:26: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_omega_hom_ols ERROR: wA1 in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:67: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:71: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:144: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:148: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:93: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:97: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:129: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:133: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:37: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_omega_hom_ols ERROR: wA2 in parameter list, but not in doc string\n",
        "get_vc_hom ERROR: wA1 in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:26: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:99: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:103: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:84: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_vc_hom ERROR: wA2 in parameter list, but not in doc string\n",
        "moments_hom ERROR: wA1 in parameter list, but not in doc string\n",
        "moments_hom ERROR: wA2 in parameter list, but not in doc string\n",
        "get_omega_hom ERROR: wA1 in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:88: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:26: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:162: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "get_omega_hom ERROR: wA2 in parameter list, but not in doc string\n",
        "err_c_loglik ERROR: No documentation.\n",
        "err_c_loglik_ord ERROR: No documentation."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Probit ERROR: vm in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:125: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:78: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:27: (ERROR/3) Unexpected indentation.\n",
        "<string>:189: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:198: (ERROR/3) Unexpected indentation.\n",
        "<string>:236: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Probit ERROR: spat_diag in parameter list, but not in doc string\n",
        "GM_Combo_Het_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:27: (ERROR/3) Unexpected indentation.\n",
        "<string>:171: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:180: (ERROR/3) Unexpected indentation.\n",
        "<string>:214: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GM_Endog_Error_Het_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:19: (ERROR/3) Unexpected indentation.\n",
        "<string>:141: (ERROR/3) Unexpected indentation.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GM_Endog_Error_Het_Regimes ERROR: summ in parameter list, but not in doc string\n",
        "GM_Endog_Error_Het_Regimes ERROR: add_lag in parameter list, but not in doc string\n",
        "GM_Error_Het_Regimes ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "GM_Error_Het_Regimes ERROR: regime_err_sep in parameter list, but not in doc string\n",
        "w_regimes ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:175: (WARNING/2) Explicit markup ends without a blank line; unexpected unindent.\n",
        "<string>:14: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "x2xsp ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "buildR1var ERROR: kryd in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:42: (ERROR/3) Unexpected indentation.\n",
        "<string>:33: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "check_cols2regi ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "w_regimes_union ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "w_regime ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "Regimes_Frame ERROR: constant_regi in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:5: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:42: (ERROR/3) Unknown target name: \"regimename\".\n",
        "<string>:19: (ERROR/3) Unknown interpreted text role \"class\".\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Regimes_Frame ERROR: yend in parameter list, but not in doc string\n",
        "load_example ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?\n",
        "Map_Classifier ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "natural_breaks ERROR: parameters key not in extracted doc.  Is the doc string numpydoc compliant?"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "fj ERROR: No documentation."
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:20: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:21: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:22: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:23: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:24: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:25: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:26: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:27: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:28: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:29: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:30: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:31: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:32: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:38: (ERROR/3) Unknown interpreted text role \"func\".\n",
        "<string>:39: (ERROR/3) Unknown interpreted text role \"class\".\n",
        "<string>:9: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "gadf ERROR: method in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:11: (ERROR/3) Unexpected indentation.\n",
        "<string>:12: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:57: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:99: (ERROR/3) Unexpected indentation.\n",
        "<string>:100: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:111: (ERROR/3) Unexpected indentation.\n",
        "<string>:112: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:123: (ERROR/3) Unexpected indentation.\n",
        "<string>:124: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:135: (ERROR/3) Unexpected indentation.\n",
        "<string>:136: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:9: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "gadf ERROR: maxk in parameter list, but not in doc string\n",
        "Age_Adjusted_Smoother ERROR: w in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:11: (ERROR/3) Unexpected indentation.\n",
        "<string>:9: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:9: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Age_Adjusted_Smoother ERROR: s in parameter list, but not in doc string\n",
        "Age_Adjusted_Smoother ERROR: alpha in parameter list, but not in doc string\n",
        "Spatial_Rate ERROR: w in parameter list, but not in doc string\n",
        "Kernel_Smoother ERROR: w in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Disk_Smoother ERROR: w in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:9: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:7: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Headbanging_Triples ERROR: w in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:10: (ERROR/3) Unexpected indentation.\n",
        "<string>:11: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:9: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Headbanging_Triples ERROR: k in parameter list, but not in doc string\n",
        "Headbanging_Triples ERROR: t in parameter list, but not in doc string\n",
        "Headbanging_Triples ERROR: edgecor in parameter list, but not in doc string\n",
        "Headbanging_Median_Rate ERROR: t in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:11: (ERROR/3) Unexpected indentation.\n",
        "<string>:12: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:9: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:9: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Headbanging_Median_Rate ERROR: aw in parameter list, but not in doc string\n",
        "Spatial_Empirical_Bayes ERROR: w in parameter list, but not in doc string\n",
        "Spatial_Median_Rate ERROR: w in parameter list, but not in doc string"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "<string>:11: (ERROR/3) Unexpected indentation.\n",
        "<string>:12: (WARNING/2) Block quote ends without a blank line; unexpected unindent.\n",
        "<string>:19: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n",
        "<string>:21: (ERROR/3) Unexpected indentation.\n",
        "<string>:28: (WARNING/2) Definition list ends without a blank line; unexpected unindent.\n"
       ]
      },
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "Spatial_Median_Rate ERROR: aw in parameter list, but not in doc string\n"
       ]
      }
     ],
     "prompt_number": 10
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [],
     "language": "python",
     "metadata": {},
     "outputs": []
    }
   ],
   "metadata": {}
  }
 ]
}