| import sys | |
| sys.path.append("./.") | |
| from src.utils.s3 import s3_connect | |
| import pandas as pd | |
| from io import StringIO | |
| import json | |
| from src.utils import * | |
| def save_csv_to_s3( | |
| df: pd.DataFrame, path: str, client=s3_connect(), bucket: str = "lebesgue-common-bucket", *args, **kwargs | |
| ): | |
| csv_buffer = StringIO() | |
| df.to_csv(csv_buffer, index=False, *args, **kwargs) | |
| key = path | |
| client.put_object(Bucket=bucket, Key=key, Body=csv_buffer.getvalue()) | |
| return | |
| def save_csv( | |
| df: pd.DataFrame, | |
| path: str, | |
| s3: bool = False, | |
| pd_args: dict = {}, | |
| s3_args: dict = {}, | |
| ): | |
| if s3: | |
| save_csv_to_s3(df=df, path=path, **s3_args) | |
| else: | |
| df.to_csv(path, index=False, **pd_args) | |