Esempio n. 1
0
#!/usr/bin/env python
import sys
import csv

import numpy as np

from analyses.logs import read_logs

outname = sys.argv[1]
dirname = sys.argv[2]

# The reduced table does not contain the subjective N_c column and nllf
# criterion.
reduced = True

logs = read_logs(dirname, 'log_?.csv')
nlogs = len(logs)

from analyses.fit_mixture import make_summary
summary = make_summary(logs)

id2nc = np.array([log.n_components for log in logs])

dir_bases = [item.dir_base for item in logs[0].items]

min_nc = 1 if reduced else 2
max_ncs = range(min_nc, id2nc.max() + 1)

if reduced:
    crits = {1 : 'aic', 2 : 'bic'}
    header1 = ', '.join(['N_c, %d' % ii for ii in max_ncs])
Esempio n. 2
0
#!/usr/bin/env python
import sys
import csv

import numpy as np

from analyses.logs import read_logs

outname = sys.argv[1]
dirname = sys.argv[2]

# The reduced table does not contain the subjective N_c column and nllf
# criterion.
reduced = True

logs = read_logs(dirname, 'log_?.csv')
nlogs = len(logs)

from analyses.fit_mixture import make_summary
summary = make_summary(logs)

id2nc = np.array([log.n_components for log in logs])

dir_bases = [item.dir_base for item in logs[0].items]

min_nc = 1 if reduced else 2
max_ncs = range(min_nc, id2nc.max() + 1)

if reduced:
    crits = {1: 'aic', 2: 'bic'}
    header1 = ', '.join(['N_c, %d' % ii for ii in max_ncs])
Esempio n. 3
0
    for suffix in suffixes:
        fig.savefig(filename + suffix, dpi=300)

args = sys.argv[1:]

same_shapes = len(args) == 2

if same_shapes:
    loc_range = [50, 150]

else:
    loc_range = [0, 180]

dirname, logname = op.split(args[0])
log = read_logs(dirname, logname)[0]

prefix = op.splitext(logname)[0]

all_params = np.array(log.get_value('params'))
all_dir_bases = np.array([ii.dir_base for ii in log.items])

all_chi_p = np.array(log.get_value('chisquare(e) p-value'))
all_aic = np.array(log.get_value('aic'))
all_bic = np.array(log.get_value('bic'))

group_info = read_group_info()
gmap = map_group_names(group_info)

group_names = ['age_group', 'pig_group', 'segment']
Esempio n. 4
0
def main():
    parser = get_options_parser()
    options, args = parser.parse_args()

    if len(args) != 1:
        parser.print_help()
        return

    dirname, pattern = op.split(args[0])
    logs = read_logs(dirname, pattern)

    group_info = read_group_info()
    gmap = map_group_names(group_info)

    if options.group is not None:
        aux = options.group.split(',')
        group_name = try_int(aux[0])
        val = try_int(aux[1])

        dir_bases = get_datasets_of_group(group_info, group_name, val)

    else:
        dir_bases = None
        group_name = None

    equal_probs = not options.plot_equal_probs
    suffixes = ['.' + ii for ii in options.suffixes.split(',')]

    plt.rcParams.update(options.rc)

    plt.close('all')
    for ilog, log in enumerate(logs):
        fig = plot_params(20 + ilog, log, gmap, dir_bases=dir_bases,
                          sort_x=True, equal_probs=equal_probs)
        esuffix = '' if group_name is None else '_%s_%s' % (group_name, val)
        save_fig(fig, op.join(dirname, 'params_%d' % ilog + esuffix), suffixes)

    if options.group is None:
        fig = plot_fit_info(1, logs, 'nllf', tr_log10)
        save_fig(fig, op.join(dirname, 'nllf'), suffixes)
        fig = plot_fit_info(2, logs, 'aic', tr_log10)
        save_fig(fig, op.join(dirname, 'aic'), suffixes)
        fig = plot_fit_info(3, logs, 'bic', tr_log10)
        save_fig(fig, op.join(dirname, 'bic'), suffixes)
        fig = plot_fit_info(4, logs, 'chisquare', tr_log10)
        save_fig(fig, op.join(dirname, 'chisquare'), suffixes)
        fig = plot_fit_info(5, logs, 'chisquare p-value', tr_none,
                            'chisquare p-value')
        save_fig(fig, op.join(dirname, 'chisquare p-value'), suffixes)

        fig = plot_fit_info(6, logs, 'chisquare(e)', tr_log10)
        save_fig(fig, op.join(dirname, 'chisquare(e)'), suffixes)
        fig = plot_fit_info(7, logs, 'chisquare(e) p-value', tr_none,
                            'chisquare(e) p-value')
        save_fig(fig, op.join(dirname, 'chisquare(e) p-value'), suffixes)
        fig = plot_fit_info(8, logs, 'chisquare(e) power', tr_none,
                            'chisquare(e) power')
        save_fig(fig, op.join(dirname, 'chisquare(e) power'), suffixes)

        fig = plot_fit_info(11, logs, 'nllf', tr_none, '-llf')
        save_fig(fig, op.join(dirname, 'nllf-raw'), suffixes)
        fig = plot_fit_info(12, logs, 'aic', tr_none, 'aic')
        save_fig(fig, op.join(dirname, 'aic-raw'), suffixes)
        fig = plot_fit_info(13, logs, 'bic', tr_none, 'bic')
        save_fig(fig, op.join(dirname, 'bic-raw'), suffixes)
        fig = plot_fit_info(14, logs, 'chisquare', tr_none, 'chisquare')
        save_fig(fig, op.join(dirname, 'chisquare-raw'), suffixes)
        fig = plot_fit_info(15, logs, 'chisquare(e)', tr_none, 'chisquare(e)')
        save_fig(fig, op.join(dirname, 'chisquare(e)-raw'), suffixes)

    if options.show:
        plt.show()