Download src/utils/preprocess_utils.py from SyedaArisha/predictive-maintenance-rag-system: direct link, hf CLI and curl.
- Browser
- Download file 1.39 kB
-
https://huggingface.co/SyedaArisha/predictive-maintenance-rag-system/resolve/main/src/utils/preprocess_utils.py
- Command line
-
hf download hf://SyedaArisha/predictive-maintenance-rag-system/src/utils/preprocess_utils.py
-
curl -L -o preprocess_utils.py https://huggingface.co/SyedaArisha/predictive-maintenance-rag-system/resolve/main/src/utils/preprocess_utils.py
1.39 kB
| """ | |
| Shared utilities for preprocessing modules. | |
| Provides logging setup, seed initialization, and a timing decorator | |
| used by all dataset-specific preprocessors. | |
| """ | |
| import os | |
| import time | |
| import logging | |
| import random | |
| import numpy as np | |
| import joblib | |
| import pandas as pd | |
| from sklearn.preprocessing import LabelEncoder, StandardScaler, MinMaxScaler | |
| try: | |
| from utils.project_paths import LOGS_DIR | |
| except ImportError: | |
| from project_paths import LOGS_DIR | |
| # Setup logging configuration | |
| os.makedirs(LOGS_DIR, exist_ok=True) | |
| logging.basicConfig( | |
| level=logging.INFO, | |
| format='%(asctime)s [%(levelname)s] %(message)s', | |
| handlers=[ | |
| logging.StreamHandler(), | |
| logging.FileHandler(os.path.join(LOGS_DIR, "preprocessing.log")) | |
| ] | |
| ) | |
| logger = logging.getLogger(__name__) | |
| def set_seeds(seed: int = 42): | |
| """Set random seeds for reproducibility.""" | |
| random.seed(seed) | |
| np.random.seed(seed) | |
| logger.info(f"Random seeds set to {seed} for reproducibility.") | |
| def time_tracker(func): | |
| """Decorator to measure and log the execution time of functions.""" | |
| def wrapper(*args, **kwargs): | |
| start_time = time.time() | |
| logger.info(f"Starting: {func.__name__}") | |
| result = func(*args, **kwargs) | |
| elapsed = time.time() - start_time | |
| logger.info(f"Finished: {func.__name__} ({elapsed:.2f}s)") | |
| return result | |
| return wrapper | |