Logo Lanfrica

mycloudbio/midland-africa-energy-analysis

Domain:

environment and energy

Record type:

project
Creator:
myc
Host:
Technical analysis of off-grid solar energy data # midland-africa-energy-analysis Technical analysis of off-grid solar energy data # ๐ŸŒ Midland Africa โ€“ Junior Data Analyst Technical Exercise This project is part of a technical exercise for the Junior Analyst role at **Midland Construction & Energy Ltd.** It involved analyzing off-grid energy data using Python and presenting insights in a 3-minute walkthrough video. --- ## ๐Ÿง  Project Objective Analyze off-grid energy system data (solar, battery, inverter, and load metrics) to generate **actionable insights** that improve performance, resilience, and efficiency. --- ## ๐Ÿ› ๏ธ Tools & Libraries - Python (Pandas, and Matplotlib for visualization) - Jupyter Notebook - Excel (initial exploration) --- ## ๐Ÿ” Analytical Focus Areas 1. **โšก Peak Generation Analysis**: Solar peaks at 9am to 4pm 2. **๐Ÿ” Load Pattern Recognition**: Spikes at 1pm to 7pm & Load power drop drastically around 6pm 3. **๐Ÿ”‹ Load Shaving Opportunities**: Load spikes between 6pm and 9pm, battery output is partially supporting load 4. **๐Ÿง  System Optimization Timing**: Charger Power is highest betweenee 9am and 1pm, Battery is charging, and Load is lowest 5. **๐Ÿ”‹ Battery Usage & Health**: Morning Period between 12am โ€“ 6am - Battery stays nearly constant at ~72 W, indicating no active charging or discharging possibly idle 6. **๐Ÿ‘๏ธ Bonus Insight โ€“ Analystโ€™s Eye**: No Grid Failover will result to Full System Vulnerability (Entire load depends on PV generation and battery reserve). --- ## ๐Ÿ“Š Sample Code Snippet ```python df['Hours'] = pd.to_datetime(df['Timestamp']).dt.hour optimized_df = df.groupby('Hours')[['charger power(W)', 'batt power(W)', 'PLoad(W)']].mean() optimized_df.plot()