File size: 512 Bytes
4badfda
 
 
 
 
 
 
 
 
 
 
 
499d301
4badfda
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import pandas as pd
from fetch import extract_portfolio_id, fetch_metrics_async

async def get_metrics_dataframe(portfolio_id: str) -> pd.DataFrame:
    pid = extract_portfolio_id(portfolio_id)
    if not pid:
        raise ValueError("Некорректный portfolioId")

    metrics = await fetch_metrics_async(pid)
    if not metrics:
        raise ValueError("Метрики не найдены")

    df = pd.DataFrame(list(metrics.items()), columns=["Метрика", "Значение"])
    return df