In this project, I worked with the data of a French city to estimate the amount of carbon directly emitted over its territory by urban activities. To achieve this, I used data from a spatially distributed network of IoT sensors that measured CO2 concentration in real-time at a height of 3-5 meters above ground level.
Geospatial data: I used GeoJSON files containing the geometries of Dijon's communes, quartiers, and land cover data. Sensor data: I collected real-time CO2 concentration measurements from IoT sensors installed throughout the city. Data processing and analysis: I cleaned, preprocessed, and analyzed the data using pandas, geopandas, and other Python libraries.
-
Data loading and preprocessing: I loaded the GeoJSON files and sensor data from an SQLite database, and preprocessed the data by dropping missing coordinates, duplicates, and performing spatial joins.
-
Data visualization: I created several visualizations, such as:
- A map of the city displaying the municipalities, quartiers, and sensor locations.
- A map displaying the average CO2 concentration values per sensor.
-
Interpolation: I used a linear interpolation method to create a heatmap of CO2 concentration values across the city.
- Time series analysis: I analyzed the CO2 concentration values over time and fitted a polynomial model to the data.
This project successfully demonstrates the potential of IoT sensor networks for monitoring urban carbon emissions in real-time. By visualizing and analyzing the sensor data, I can gain valuable insights into the spatial distribution of CO2 emissions across the city. This information can be used by local authorities to develop targeted policies and initiatives to reduce carbon emissions and combat climate change.