38 lines
1.1 KiB
Python
38 lines
1.1 KiB
Python
import logging
|
|
|
|
# Configure logging
|
|
logging.basicConfig(
|
|
level=logging.INFO,
|
|
format="%(asctime)s [%(levelname)s] %(name)s - %(message)s",
|
|
)
|
|
logger = logging.getLogger(__name__)
|
|
|
|
def pre_processing(results):
|
|
result = results[0]
|
|
dtypes = {
|
|
"hd_score_m1": float,
|
|
"cluster_size_users_v2": float,
|
|
"target_connected_30_sum": float,
|
|
"email_cnt": float,
|
|
"rejected_app_count": float,
|
|
"app_dt_day_cnt": float,
|
|
"hd_score_iso_m2": float
|
|
}
|
|
data = {
|
|
"hd_score_m1": result["hd_score_m1"],
|
|
"cluster_size_users_v2": result["cluster_size_users_v2"],
|
|
"target_connected_30_sum": result["target_connected_30_sum"],
|
|
"email_cnt": result["email_cnt"],
|
|
"rejected_app_count": result["rejected_app_count"],
|
|
"app_dt_day_cnt": result["app_dt_day_cnt"],
|
|
"cluster_size": result["cluster_size"],
|
|
"hd_score_iso_m2": result["hd_score_iso_m2"],
|
|
}
|
|
|
|
for col, dtype in dtypes.items():
|
|
if col in data:
|
|
value = str(data[col]).strip()
|
|
data[col] = dtype(value) if value.replace(".", "", 1).isdigit() else None
|
|
|
|
return data
|