File size: 723 Bytes
cea4a4b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | 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)
|