Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add number of failed states metric to comparative analysis board (Fixes #43) #69

Merged
merged 6 commits into from
Mar 29, 2024
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Remove inferrable parameter
jvivian committed Mar 24, 2024
commit 8c32e61760bcff3317249144aacfe4d9b3a095c9
5 changes: 0 additions & 5 deletions covid19_drdfm/streamlit/Dashboard.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
from datetime import datetime
import json
import time
from pathlib import Path

import pandas as pd
import plotly.io as pio
import plotly_express as px
import statsmodels.api as sm
import streamlit as st
from rich import print as pprint
from sklearn.preprocessing import MinMaxScaler

from covid19_drdfm.constants import FACTORS
from covid19_drdfm.dfm import run_parameterized_model
8 changes: 5 additions & 3 deletions covid19_drdfm/streamlit/pages/2_Comparative_Run_Analysis.py
Original file line number Diff line number Diff line change
@@ -3,6 +3,7 @@
import arviz as az
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import plotly.io as pio
import plotly_express as px
import pymc as pm
@@ -70,19 +71,20 @@ def delta_failures(run_dir: Path, run_name: str):
return min_failures - num_failures(run_dir, run_name)


def get_summary(df, run_name):
def get_summary(df: pd.DataFrame):
# Median metrics
run_name = df.Run.iloc[0]
col1, col2, col3, col4 = st.columns(4)
col1.metric("Number of Failed States", num_failures(run_dir, run_name), delta_failures(run_dir, run_name))
col2.metric("Median Log Likelihood", df["Log Likelihood"].median())
col3.metric("Median AIC", df["AIC"].median())
col4.metric("Median EM Iterations", df["EM Iterations"].median())


def show_summary(df):
def show_summary(df: pd.DataFrame):
run = st.selectbox("Select a run", df["Run"].unique())
filtered_df = df[(df["Run"] == run)]
return get_summary(filtered_df, run)
return get_summary(filtered_df)


def run_normal(df, metric):