Exemplo n.º 1
0
def combinedThresholdPlot():
    import copy
    folders = [folder for folder in os.listdir(os.getcwd()) if os.path.isdir(folder) and not folder == 'localBaseDir' and not folder == 'ghousing.jobs']
    tableList = [ (folder, os.path.join(os.getcwd(), folder, 'output', 'ownershipThreshold_1.out')) for folder in folders ]
    tableDicts = dict([ (folder, tableDict.fromTextFile(table, width = np.max([len(folder) for folder in folders]) + 5, prec = 10)) for folder, table in tableList if os.path.isfile(table)])
    tableKeys = tableDicts.keys()
    tableKeys.sort()
    if tableDicts:
        for ixTable, tableKey in enumerate(tableKeys):
#            print tableKey
#            print tableDicts[tableKey]
            table = copy.deepcopy(tableDicts[tableKey])
            table.keep(['age', 'yst1'])
            table.rename('yst1', tableKey)
            if ixTable == 0:
                fullTable = copy.deepcopy(table)
            else:
                fullTable.merge(table, 'age')
                if '_merge' in fullTable.cols:
                    fullTable.drop('_merge')
                logger.info(fullTable)
        logger.info(fullTable)
        f = open(os.path.join(os.getcwd(), 'ownerThresholds'), 'w')
        print >> f, fullTable
        f.flush()
        ax = 3
        plotSimulation(table = os.path.join(os.getcwd(), 'ownerThresholds'), xVar = 'age', yVars = list(fullTable.cols), figureFile = os.path.join(os.getcwd(), 'ownerThresholds.png'), verb = 'CRITICAL' )
Exemplo n.º 2
0
def combinedOwnerSimuPlot():
    import copy
    logger.debug('starting combinedOwnerSimuPlot')
    folders = [
        folder for folder in os.listdir(os.getcwd()) if os.path.isdir(folder)
        and not folder == 'localBaseDir' and not folder == 'ghousing.jobs'
    ]
    logger.debug('folders are %s ' % folders)
    tableList = [(folder,
                  os.path.join(os.getcwd(), folder, 'output', 'aggregate.out'))
                 for folder in folders]
    tableDicts = dict([(folder,
                        tableDict.fromTextFile(
                            table,
                            width=np.max([len(folder)
                                          for folder in folders]) + 5,
                            prec=10)) for folder, table in tableList
                       if os.path.isfile(table)])
    tableKeys = tableDicts.keys()
    tableKeys.sort()
    if tableDicts:
        for ixTable, tableKey in enumerate(tableKeys):
            table = copy.deepcopy(tableDicts[tableKey])
            table.keep(['age', 'owner'])
            table.rename('owner', tableKey)
            if ixTable == 0:
                fullTable = copy.deepcopy(table)
            else:
                fullTable.merge(table, 'age')
                fullTable.drop('_merge')
            logger.info(fullTable)

        empOwnershipFile = os.path.join(os.getcwd(), 'localBaseDir', 'input',
                                        'PSIDOwnershipProfilealleduc.out')
        empOwnershipTable = tableDict.fromTextFile(empOwnershipFile,
                                                   width=20,
                                                   prec=10)
        empOwnershipTable.rename('PrOwnership', 'empOwnership')
        fullTable.merge(empOwnershipTable, 'age')
        fullTable.drop('_merge')
        if fullTable:
            logger.info(fullTable)
            f = open(os.path.join(os.getcwd(), 'ownerSimu'), 'w')
            print >> f, fullTable
            f.flush()
        else:
            logger.info('no owner simus')
        logger.debug('done combinedOwnerSimuPlot')

        plotSimulation(table=os.path.join(os.getcwd(), 'ownerSimu'),
                       xVar='age',
                       yVars=list(fullTable.cols),
                       yVarRange=(0., 1.),
                       figureFile=os.path.join(os.getcwd(), 'ownerSimu.png'),
                       verb='CRITICAL')
Exemplo n.º 3
0
def combinedOwnerSimuPlot():
    import copy

    logger.debug("starting combinedOwnerSimuPlot")
    folders = [
        folder
        for folder in os.listdir(os.getcwd())
        if os.path.isdir(folder) and not folder == "localBaseDir" and not folder == "ghousing.jobs"
    ]
    logger.debug("folders are %s " % folders)
    tableList = [(folder, os.path.join(os.getcwd(), folder, "output", "aggregate.out")) for folder in folders]
    tableDicts = dict(
        [
            (folder, tableDict.fromTextFile(table, width=np.max([len(folder) for folder in folders]) + 5, prec=10))
            for folder, table in tableList
            if os.path.isfile(table)
        ]
    )
    tableKeys = tableDicts.keys()
    tableKeys.sort()
    if tableDicts:
        for ixTable, tableKey in enumerate(tableKeys):
            table = copy.deepcopy(tableDicts[tableKey])
            table.keep(["age", "owner"])
            table.rename("owner", tableKey)
            if ixTable == 0:
                fullTable = copy.deepcopy(table)
            else:
                fullTable.merge(table, "age")
                fullTable.drop("_merge")
            logger.info(fullTable)

        empOwnershipFile = os.path.join(os.getcwd(), "localBaseDir", "input", "PSIDOwnershipProfilealleduc.out")
        empOwnershipTable = tableDict.fromTextFile(empOwnershipFile, width=20, prec=10)
        empOwnershipTable.rename("PrOwnership", "empOwnership")
        fullTable.merge(empOwnershipTable, "age")
        fullTable.drop("_merge")
        if fullTable:
            logger.info(fullTable)
            f = open(os.path.join(os.getcwd(), "ownerSimu"), "w")
            print >> f, fullTable
            f.flush()
        else:
            logger.info("no owner simus")
        logger.debug("done combinedOwnerSimuPlot")

        plotSimulation(
            table=os.path.join(os.getcwd(), "ownerSimu"),
            xVar="age",
            yVars=list(fullTable.cols),
            yVarRange=(0.0, 1.0),
            figureFile=os.path.join(os.getcwd(), "ownerSimu.png"),
            verb="CRITICAL",
        )
Exemplo n.º 4
0
def combinedThresholdPlot():
    import copy

    folders = [
        folder
        for folder in os.listdir(os.getcwd())
        if os.path.isdir(folder) and not folder == "localBaseDir" and not folder == "ghousing.jobs"
    ]
    tableList = [
        (folder, os.path.join(os.getcwd(), folder, "output", "ownershipThreshold_1.out")) for folder in folders
    ]
    tableDicts = dict(
        [
            (folder, tableDict.fromTextFile(table, width=np.max([len(folder) for folder in folders]) + 5, prec=10))
            for folder, table in tableList
            if os.path.isfile(table)
        ]
    )
    tableKeys = tableDicts.keys()
    tableKeys.sort()
    if tableDicts:
        for ixTable, tableKey in enumerate(tableKeys):
            #            print tableKey
            #            print tableDicts[tableKey]
            table = copy.deepcopy(tableDicts[tableKey])
            table.keep(["age", "yst1"])
            table.rename("yst1", tableKey)
            if ixTable == 0:
                fullTable = copy.deepcopy(table)
            else:
                fullTable.merge(table, "age")
                if "_merge" in fullTable.cols:
                    fullTable.drop("_merge")
                logger.info(fullTable)
        logger.info(fullTable)
        f = open(os.path.join(os.getcwd(), "ownerThresholds"), "w")
        print >> f, fullTable
        f.flush()
        ax = 3
        plotSimulation(
            table=os.path.join(os.getcwd(), "ownerThresholds"),
            xVar="age",
            yVars=list(fullTable.cols),
            figureFile=os.path.join(os.getcwd(), "ownerThresholds.png"),
            verb="CRITICAL",
        )
Exemplo n.º 5
0
def combinedThresholdPlot():
    import copy
    folders = [
        folder for folder in os.listdir(os.getcwd()) if os.path.isdir(folder)
        and not folder == 'localBaseDir' and not folder == 'ghousing.jobs'
    ]
    tableList = [(folder,
                  os.path.join(os.getcwd(), folder, 'output',
                               'ownershipThreshold_1.out'))
                 for folder in folders]
    tableDicts = dict([(folder,
                        tableDict.fromTextFile(
                            table,
                            width=np.max([len(folder)
                                          for folder in folders]) + 5,
                            prec=10)) for folder, table in tableList
                       if os.path.isfile(table)])
    tableKeys = tableDicts.keys()
    tableKeys.sort()
    if tableDicts:
        for ixTable, tableKey in enumerate(tableKeys):
            #            print tableKey
            #            print tableDicts[tableKey]
            table = copy.deepcopy(tableDicts[tableKey])
            table.keep(['age', 'yst1'])
            table.rename('yst1', tableKey)
            if ixTable == 0:
                fullTable = copy.deepcopy(table)
            else:
                fullTable.merge(table, 'age')
                if '_merge' in fullTable.cols:
                    fullTable.drop('_merge')
                logger.info(fullTable)
        logger.info(fullTable)
        f = open(os.path.join(os.getcwd(), 'ownerThresholds'), 'w')
        print >> f, fullTable
        f.flush()
        ax = 3
        plotSimulation(table=os.path.join(os.getcwd(), 'ownerThresholds'),
                       xVar='age',
                       yVars=list(fullTable.cols),
                       figureFile=os.path.join(os.getcwd(),
                                               'ownerThresholds.png'),
                       verb='CRITICAL')
Exemplo n.º 6
0
def combinedOwnerSimuPlot():
    import copy
    logger.debug('starting combinedOwnerSimuPlot')
    folders = [folder for folder in os.listdir(os.getcwd()) if os.path.isdir(folder) and not folder == 'localBaseDir' and not folder == 'ghousing.jobs']
    logger.debug('folders are %s ' % folders)
    tableList = [ (folder, os.path.join(os.getcwd(), folder, 'output', 'aggregate.out')) for folder in folders ]
    tableDicts = dict([ (folder, tableDict.fromTextFile(table, width = np.max([len(folder) for folder in folders]) + 5, prec = 10)) for folder, table in tableList if os.path.isfile(table)])
    tableKeys = tableDicts.keys()
    tableKeys.sort()
    if tableDicts:
        for ixTable, tableKey in enumerate(tableKeys):
            table = copy.deepcopy(tableDicts[tableKey])
            table.keep(['age', 'owner'])
            table.rename('owner', tableKey)
            if ixTable == 0:
                fullTable = copy.deepcopy(table)
            else:
                fullTable.merge(table, 'age')
                fullTable.drop('_merge')
            logger.info(fullTable)

        empOwnershipFile = os.path.join(os.getcwd(), 'localBaseDir', 'input', 'PSIDOwnershipProfilealleduc.out')
        empOwnershipTable = tableDict.fromTextFile(empOwnershipFile, width = 20, prec = 10)
        empOwnershipTable.rename('PrOwnership', 'empOwnership')
        fullTable.merge(empOwnershipTable, 'age')
        fullTable.drop('_merge')
        if fullTable:
            logger.info(fullTable)
            f = open(os.path.join(os.getcwd(), 'ownerSimu'), 'w')
            print >> f, fullTable
            f.flush()
        else:
            logger.info('no owner simus')
        logger.debug('done combinedOwnerSimuPlot')

        plotSimulation(table = os.path.join(os.getcwd(), 'ownerSimu'), xVar = 'age', yVars = list(fullTable.cols), yVarRange = (0., 1.), figureFile = os.path.join(os.getcwd(), 'ownerSimu.png'), verb = 'CRITICAL' )
Exemplo n.º 7
0
    aggregateOutTable = tableDict.fromTextFile(aggregateOut, width = 20, prec = 10)
    aggregateOutTable.keep(['age', 'owner'])
    aggregateOutTable.rename('owner', 'thOwnership')
    empOwnershipTable = tableDict.fromTextFile(empOwnershipFile, width = 20, prec = 10)
    empOwnershipTable.rename('PrOwnership', 'empOwnership')
    print empOwnershipTable
#    print empOwnershipTable.cellFormat

    ownershipTable = aggregateOutTable.merged(empOwnershipTable, 'age')
    print ownershipTable
#    print ownershipTable.cellFormat

    yVars = ['thOwnership', 'empOwnership']
    # add the individual simulations
    for profile in [ '1', '2', '3' ]:
        profileOwnershipFile = os.path.join(output_dir, 'simulation_' + profile + '.out')
        if not os.path.exists(profileOwnershipFile): continue
        profileOwnershipTable = tableDict.fromTextFile(profileOwnershipFile, width = 20, prec = 10)
        profileOwnershipTable.keep(['age', 'owner'])
        profileOwnershipTable.rename('owner', 'thOwnership_' + profile)
        ownershipTable.merge(profileOwnershipTable, 'age')
        ownershipTable.drop('_merge') 
print ownershipTable
f = open(ownershipTableFile, 'w')
print >> f, ownershipTable
f.close()
plotSimulation(table = ownershipTableFile, xVar = 'age', yVars = yVars, yVarRange = (0., 1.), figureFile = os.path.join(output_dir, 'ownership.png'), verb = 'CRITICAL')
# make plot of life-cycle simulation (all variables)
makeAggregatePlot(output_dir)

Exemplo n.º 8
0
    ownershipTable = aggregateOutTable.merged(empOwnershipTable, 'age')
    print ownershipTable
    #    print ownershipTable.cellFormat

    yVars = ['thOwnership', 'empOwnership']
    # add the individual simulations
    for profile in ['1', '2', '3']:
        profileOwnershipFile = os.path.join(output_dir,
                                            'simulation_' + profile + '.out')
        if not os.path.exists(profileOwnershipFile): continue
        profileOwnershipTable = tableDict.fromTextFile(profileOwnershipFile,
                                                       width=20,
                                                       prec=10)
        profileOwnershipTable.keep(['age', 'owner'])
        profileOwnershipTable.rename('owner', 'thOwnership_' + profile)
        ownershipTable.merge(profileOwnershipTable, 'age')
        ownershipTable.drop('_merge')
print ownershipTable
f = open(ownershipTableFile, 'w')
print >> f, ownershipTable
f.close()
plotSimulation(table=ownershipTableFile,
               xVar='age',
               yVars=yVars,
               yVarRange=(0., 1.),
               figureFile=os.path.join(output_dir, 'ownership.png'),
               verb='CRITICAL')
# make plot of life-cycle simulation (all variables)
makeAggregatePlot(output_dir)