Glider
Loading...
Searching...
No Matches
glider
src
importer
FormatManager.py
Go to the documentation of this file.
1
# from pandas import ExcelFile, DataFrame
2
from
Validate
import
validate_data
3
from
ErrorHandler
import
ErrorHandler
4
from
TemplateManager
import
TemplateManager
5
6
class
csvManager
:
7
def
df_csv
(*args):
8
"""Executes full procedure
9
10
Args:
11
event (dict): is a dictionary with all client and sales information
12
type_format (str): format name
13
file (dict): features required by file
14
session (boto3 obj): AWS client connection
15
write_DF (class): mapper columns method
16
Returns: data_otto (pandas dataframe)
17
status (str)
18
"""
19
event = args[0]
20
type_format = args[1]
21
file = args[2]
22
session = args[3]
23
write_DF = args[4]
24
try
:
25
filename = file[
"file"
]
26
s3_path_file =
"s3://{bucket}/{key}/{filename}"
.format(bucket=event[
"bucket"
][0], key=event[
"path"
][0], filename=filename)
27
columns_csv = event[
"format"
][type_format][
"columns"
]
28
data = TemplateManager.preprocessing(dir_file=s3_path_file, type_format=type_format, file_features=file, session=session, release_col=columns_csv[0][
"value"
])
29
print(
"ORIGINAL DATA \n {}"
.format(data.head()))
30
low = [x.lower()
for
x
in
data.columns.to_list()]
31
data.columns = low
32
# data = validate_data().validate_columns(data, columns_csv)
33
data_otto = write_DF.ftypes(data, columns_csv, type_format, filename)
34
data_otto[
"file"
] = filename
35
status =
"Ok"
36
return
data_otto, status
37
except
Exception
as
status:
38
return
"File could not be loaded"
, status
39
40
# class xlsManager:
41
# def df_excel(event, s3_object, formats, file, write_DF): #s3_object=s3_object, formats=str, file=dict, write_DF=class
42
# filename = file["file"]
43
# sheet = file["sheet"]
44
# delimiter = event["format"][formats]["delimiter"]
45
# columns_xls = event["format"][formats]["columns"]
46
# skip_rows = file["skip_rows"]
47
# xls = ExcelFile(s3_object['Body'].read())
48
# name = filename.split(".xls")
49
# sheet_empty = 0
50
# data = TemplateManager.preprocessing(xls, formats, sheet, delimiter, skip_rows)
51
# print("ORIGINAL DATA \n {}".format(data.head()))
52
# low = [x.lower() for x in data.columns.to_list()]
53
# data.columns = low
54
# data = validate_data().validate_columns(data, columns_xls)
55
# # data = read_excel(xls, sheet_name=sheet, keep_default_na=False)
56
# if len(data) == 0:
57
# sheet_empty += 1
58
# # print("sheet {} is empty".format(sheet))
59
# return 0
60
# else:
61
# # write_DF.format_type(data, formats, filename)
62
# data_otto = write_DF.ftypes(data, columns_xls, formats, filename)
63
# filename = filename+"-"+sheet.replace(" ", "_")
64
# data_otto["filename"] = filename
65
# xls.close()
66
# return data_otto, filename
src.importer.FormatManager.csvManager
Definition
FormatManager.py:6
src.importer.FormatManager.csvManager.df_csv
df_csv(*args)
Definition
FormatManager.py:7
Generated by
1.12.0