Musolyze / utils.py
Danialebrat's picture
adding codes and files
fe8a467
import pandas as pd
import streamlit as st
import json
def load_table_config(file_path: str) -> dict:
"""Load the table configuration JSON."""
with open(file_path, 'r') as f:
return json.load(f)
def load_uploaded_files(uploaded_files):
"""
Load dataframes from the uploaded files (CSV/Excel).
Returns a list of pandas DataFrames.
"""
dataframes = []
for file in uploaded_files:
if file.name.endswith('.csv'):
df = pd.read_csv(file)
else:
df = pd.read_excel(file)
dataframes.append(df)
return dataframes
def display_table_descriptions(selected_tables, table_config):
"""
Given a list of selected table names and the table config,
write out their descriptions in the sidebar.
"""
if selected_tables:
st.sidebar.subheader("Table Descriptions")
for table_name in selected_tables:
description = table_config[table_name].get('description', "No description available.")
cols = table_config[table_name].get('cols', [])
st.sidebar.markdown(f"**{table_name}**: {description}")
st.sidebar.markdown(f"**Available columns**: {cols}")