Spaces:
Sleeping
Sleeping
File size: 1,315 Bytes
fd4a87f | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | import pandas as pd
import streamlit as st
@st.cache_data
def load_comparisons(comparison_file, billtext_file, modelseg_file):
df = pd.read_json(comparison_file)
most_recent_ver = (
df.groupby('target__bill_id')
['target__doc_rank'].max()
.reset_index()
.assign(target__is_most_recent_doc=True)
)
df = (
df.merge(most_recent_ver, how='left')
.fillna({'target__is_most_recent_doc':False})
.astype({'target__is_most_recent_doc':'bool'})
)
text_df = pd.read_json(billtext_file)
seg_df = pd.read_json(modelseg_file)
return df, text_df, seg_df
def render(comparison_file, billtext_file, modelseg_file):
if st.button('Load data'):
(
st.session_state.df,
st.session_state.text_df,
st.session_state.seg_df
) = load_comparisons(comparison_file, billtext_file, modelseg_file)
if 'df' not in st.session_state:
(
st.session_state.df,
st.session_state.text_df,
st.session_state.seg_df
) = load_comparisons(comparison_file, billtext_file, modelseg_file)
df = st.session_state.df
text_df = st.session_state.text_df
seg_df = st.session_state.seg_df
return df, text_df, seg_df
|