text2sql-ai-agent / service /dataframe_service.py
jaymeen1405's picture
Upload 39 files
58478b5 verified
Raw
History Blame Contribute Delete
1.01 kB
from pathlib import Path
import pandas as pd
def load_dataset(file_path: Path):
"""
Reads CSV or Excel.
Returns
-------
dict
{
"tables":{
table_name: dataframe
}
}
"""
suffix = file_path.suffix.lower()
if suffix == ".csv":
df = pd.read_csv(file_path)
return {
"tables": {
file_path.stem: df
}
}
elif suffix in [".xlsx", ".xls"]:
sheets = pd.read_excel(
file_path,
sheet_name=None
)
return {
"tables": sheets
}
else:
raise ValueError("Unsupported file format")
def dataframe_metadata(df):
return {
"rows": len(df),
"columns": len(df.columns),
"column_names": list(df.columns),
"memory": round(
df.memory_usage(deep=True).sum() / 1024,
2,
),
}