Ejemplo n.º 1
0
def test_save_tree_plot():
    fit = get_fit()
    fit2 = get_fit_larger_uncertainties()
    fits = [fit, fit2]

    values_no_error_bars = [{
        "mu": 1.1,
        "tau": 3.1,
    }]

    tree_params = TreePlotParams()

    tree_params.labels = [
        "Normal",
        "Larger uncertainties",
        "Exact",
    ]

    outdir = "tarpan/cmdstanpy/model_info/tree_plot_test"

    if os.path.isdir(outdir):
        shutil.rmtree(outdir)

    save_tree_plot(fits,
                   extra_values=values_no_error_bars,
                   param_names=["mu", "tau"],
                   tree_params=tree_params)

    assert os.path.isfile(os.path.join(outdir, "summary.pdf"))
Ejemplo n.º 2
0
def test_save_compare_parameters__extra_values():
    fit = get_fit()
    fit2 = get_fit_larger_uncertainties()
    fits = [fit, fit2]

    outdir = "tarpan/cmdstanpy/model_info/compare_parameters_test"

    if os.path.isdir(outdir):
        shutil.rmtree(outdir)

    extra_values = [{
        "mu": 1.1,
        "tau": 2.1,
        "eta.1": 3.1,
        "eta.2": 5.2
    }, {
        "mu": 10.1,
        "tau": 20.1,
        "eta.1": 30.1,
        "eta.2": 35.3
    }]

    save_compare_parameters(fits,
                            labels=['One', 'Two', 'Extra 1', 'Extra 2'],
                            extra_values=extra_values,
                            param_names=["mu", "tau", "eta.1"])

    assert os.path.isfile(os.path.join(outdir, "parameters_compared.txt"))

    with open(os.path.join(outdir, "parameters_compared.txt"), 'r') as file:
        data = file.read()
        assert "2.36 (+5.41, -2.35)" in data
        assert "Extra 1" in data
        assert "Extra 2" in data
        assert "30.1" in data
Ejemplo n.º 3
0
def test_save_pair_plot():
    fit = get_fit()

    outdir = "tarpan/cmdstanpy/model_info/pair_plot_test"

    if os.path.isdir(outdir):
        shutil.rmtree(outdir)

    save_pair_plot(fit, param_names=["mu", "tau", 'eta.1'])

    assert os.path.isfile(os.path.join(outdir, "pair_plot.pdf"))
Ejemplo n.º 4
0
def test_save_traceplot():
    fit = get_fit()
    outdir = "tarpan/cmdstanpy/model_info/histogram_test"

    if os.path.isdir(outdir):
        shutil.rmtree(outdir)

    save_histogram(fit)

    assert os.path.isfile(os.path.join(outdir, "histogram_01.pdf"))
    assert os.path.isfile(os.path.join(outdir, "histogram_01.pdf"))
    assert os.path.isfile(os.path.join(outdir, "histogram_01.pdf"))
Ejemplo n.º 5
0
def test_save_summary():
    fit = get_fit()

    outdir = "tarpan/cmdstanpy/model_info/summary_test"

    if os.path.isdir(outdir):
        shutil.rmtree(outdir)

    save_summary(fit, param_names=["mu", "tau", 'eta.1'])

    assert os.path.isfile(os.path.join(outdir, "summary.txt"))
    assert os.path.isfile(os.path.join(outdir, "summary.csv"))
Ejemplo n.º 6
0
def test_print_summary(capsys):
    fit = get_fit()

    result = print_summary(fit,
                           param_names=["mu", "tau", 'eta.1'],
                           summary_params=SummaryParams(hpdis=[0.05, 0.99]))

    assert "8.05" in capsys.readouterr().out

    assert result["df"].shape == (3, 11)
    assert "8.05" in result["table"]
    assert result["samples"].shape == (4000, 3)
Ejemplo n.º 7
0
def test_save_summary_specify_hpdi():
    fit = get_fit()

    outdir = "tarpan/cmdstanpy/model_info/summary_test"

    if os.path.isdir(outdir):
        shutil.rmtree(outdir)

    save_summary(fit,
                 param_names=["mu", "tau", 'eta.1'],
                 summary_params=SummaryParams(hpdis=[0.05, 0.99]))

    assert os.path.isfile(os.path.join(outdir, "summary.txt"))
    assert os.path.isfile(os.path.join(outdir, "summary.csv"))
Ejemplo n.º 8
0
def test_save_compare_parameters():
    fit = get_fit()
    fit2 = get_fit_larger_uncertainties()
    fits = [fit, fit2]

    outdir = "tarpan/cmdstanpy/model_info/compare_parameters_test"

    if os.path.isdir(outdir):
        shutil.rmtree(outdir)

    save_compare_parameters(fits,
                            labels=['One', 'Two'],
                            param_names=["mu", "tau", "eta.1"])

    assert os.path.isfile(os.path.join(outdir, "parameters_compared.txt"))

    with open(os.path.join(outdir, "parameters_compared.txt"), 'r') as file:
        data = file.read()
        assert "2.36 (+5.41, -2.35)" in data
Ejemplo n.º 9
0
def test_save_analysis():
    fit = get_fit()

    outdir = "tarpan/cmdstanpy/model_info/analyse_test"

    if os.path.isdir(outdir):
        shutil.rmtree(outdir)

    save_analysis(fit)

    # Diagnostic
    assert os.path.isfile(os.path.join(outdir, "diagnostic.txt"))

    # Check summary files
    # ---------------

    assert os.path.isfile(os.path.join(outdir, "summary.txt"))
    assert os.path.isfile(os.path.join(outdir, "summary.csv"))

    # Tree plot
    assert os.path.isfile(os.path.join(outdir, "summary.pdf"))

    # Trace plots
    # ----------

    assert os.path.isfile(os.path.join(outdir, "traceplot_01.pdf"))
    assert os.path.isfile(os.path.join(outdir, "traceplot_02.pdf"))
    assert os.path.isfile(os.path.join(outdir, "traceplot_03.pdf"))

    # Histograms of posterior distributions
    # ----------

    assert os.path.isfile(os.path.join(outdir, "histogram_01.pdf"))
    assert os.path.isfile(os.path.join(outdir, "histogram_02.pdf"))
    assert os.path.isfile(os.path.join(outdir, "histogram_03.pdf"))

    # Pair plot
    assert os.path.isfile(os.path.join(outdir, "pair_plot.pdf"))