Código-fonte para llm4time.core.data.manager

"""
Módulo para gerenciamento de dados de séries temporais.

Este módulo fornece funcionalidades para salvar DataFrames processados
em diferentes formatos, facilitando a persistência de dados após o
processamento e análise de séries temporais.
"""

import os
import pandas as pd
from llm4time.core.logging import logger


[documentos] def save(df: pd.DataFrame, path: str) -> None: """ Salva um DataFrame em arquivo, identificando automaticamente o formato. Suporta os seguintes formatos: CSV, XLSX, JSON, Parquet. Args: df (pd.DataFrame): DataFrame contendo os dados a serem salvos. path (str): Caminho completo incluindo nome e extensão do arquivo. Examples: >>> df = pd.DataFrame({'date': ['2023-01-01', '2023-01-02'], ... 'value': [10.5, 12.3]}) >>> save(df, "etth2.csv") # Arquivo salvo em etth2.csv """ try: _, ext = os.path.splitext(path) ext = ext.lower() if ext == ".csv": df.to_csv(path, index=False) elif ext in ".xlsx": df.to_excel(path, index=False) elif ext == ".json": df.to_json(path, orient="records", date_format="iso") elif ext == ".parquet": df.to_parquet(path, index=False) else: logger.error(f"Extensão de arquivo não suportada: {ext}") return logger.info(f"Arquivo salvo em {path}") except Exception as e: logger.error(f"Falha ao salvar arquivo: {e}")