DataDecoder / correlation.py
dewmisam's picture
Upload 19 files
1067825 verified
from fastapi import APIRouter, HTTPException
from pydantic import BaseModel
from backend.state import session_store
from backend.services.correlationService import get_correlation
router = APIRouter()
class SessionRequest(BaseModel):
session_id: str
target: str | None = None
@router.post("/correlation")
async def correlation(request: SessionRequest):
session_id = request.session_id
target = request.target
if session_id not in session_store:
raise HTTPException(status_code=400, detail="session code not found")
df = session_store[session_id]["df"]
try:
return get_correlation(df, target)
except ValueError as e:
raise HTTPException(status_code=400, detail=str(e))