The goal of this project is to develop an ML model capable of forecasting daily electric demand in the Public Service Company of Colorado (PSCO, basically XCel Energy's footprint in Colorado) territory, based on the forecast daily temperatures.
Messing around with prediction models. The existing models I have are not great (probably an ARIMA model would do better) but it's been a good learning experience. I expect to go investigate "the basics" a bit more and hopefully come back to this.
Thus far I have:
- identified data sources (see below)
- written a client library to retrieve weather forecasts from NOAA/weather.gov, in the
noaa_client
package. - written download and parsing code to retrieve historical weather data from GHCN-D in the
ghcnd
package. - written download and parsing code for the EIA OpenData historical electric demand data in the
eia
package. - Done some data analysis & plotting in a Jupyter notebook,
data_exploration.ipynb
. - Created an initial prediction model in
decision_trees.ipynb
- Created a neural net based model in
neural_net.ipynb
, though the accuracy is not great
I have identified three data sources that I believe will get me sufficient information.
- EIA OpenData has electric demand data back to 2015, and provides daily updates
- NOAA Weather provides forecast data (including temp) but very limited historical data (only 7 days, and only on some endpoints)
- NOAA's GHCN-d dataset provides historical weather data. In particular, it can be downloaded from here
low_temp_history.ipynb
has some analysis on low temperatures in the Denver area that I was using to decide if I
can safely heat my house with just a heat pump.
hour_of_day_demand.ipynb
is just poking around at some daily electric usage patterns.