Weather and Electricity Demand

NYC and Long Island, 2020–2026

Energy Team: Bikash Bhowmik, Cecilia De La Fuente Chavez, Ellie Wilser, Zaina Hassan

Data Sources

  • NYISO 5-minute load data (NYC and Long Island zones)
  • NOAA / NWS daily weather: temperature and precipitation
  • Time range: January 2020 to September 2026
NYISO Zone NOAA Weather Station
NYC (Zone J) LaGuardia Airport
NYC (Zone J) Central Park
Long Island (Zone K) Islip Airport

Entity Relationship Diagram

erDiagram zone ||--o{ weather_station : "has" zone ||--o{ daily_electricity_load : "has" weather_station ||--o{ daily_weather : "records"
zone {
    int ptid PK
    text nyiso_zone_name
    text noaa_zone_name
}
weather_station {
    text station_id PK
    text noaa_station_name
    int ptid FK
}
daily_electricity_load {
    int ptid PK, FK
    date load_date PK
    numeric avg_load
}
daily_weather {
    text station_id PK, FK
    date obs_date PK
    numeric prcp
    numeric tmax
    numeric tmin
}

NYISO Load Data

What I accomplished:

  • Automated downloading monthly ZIP files containing electricity load data.

  • Extracted and read the CSV files without manually opening each archive.

  • Filtered the data and combined the relevant records into one dataframe.

  • Aggregated five-minute observations into daily average electricity load.

  • Checked for missing dates and exported the final dataset to CSV.

Output: nyiso_daily_average_load.csv

NYISO Code Base 1

1. map_dfr() — Automate and combine

all_data <- map_dfr(months, function(month) {   
  # Download and open monthly ZIP   
  # Read CSV files   
  # Filter for the selected zones 
})
  • Loops through the months in the study period.

  • Processes each month’s files and combines the resulting rows into one dataframe.

  • Avoids having to download, open, and merge every file manually.

NYISO Code Base 2

2. group_by() + summarise() — Calculate daily averages

group_by(Date, Name, PTID) |>   
  summarise(     
    Daily_Average_Load = mean(Load, na.rm = TRUE),     
    .groups = "drop"   
  )
  • Groups five-minute observations by date and electricity zone.

  • Calculates the average load for each group, ignoring missing load values.

  • Produces one daily average per date and zone represented in the data.

NOAA Weather Data Collection

Source: National Oceanic and Atmospheric Administration (NOAA)

Objective: Examine how weather conditions relate to electricity demand in New York.

  • Weather stations: LaGuardia Airport, Central Park, and Islip (Long Island)
  • Key observations: Daily temperature and precipitation
  • Why three stations? Capture weather differences across the NYC and Long Island region

NOAA Data Cleaning and Preparation

Weather data processing in R

  • Organized daily observations and standardized dates
  • Checked missing values and calculated average daily temperature
  • Heating Degree Days (HDD): max(65 - TAVG, 0)
  • Cooling Degree Days (CDD): max(TAVG - 65, 0)
  • Both use 65°F as the reference temperature

Weather and Electricity Demand

Summer: Cooling demand

  • Hotter days increase air-conditioning use
  • Higher CDD indicates greater cooling needs

Winter: Heating demand

  • Colder days increase heating requirements
  • Higher HDD indicates colder conditions

Integration: Join NOAA weather observations with NYISO electricity demand data to investigate seasonal patterns and temperature-related associations.

Electricity Load Over Time

  • Clear summer peaks in both regions
  • NYC averages about 5,655 MW vs. 2,291 MW for Long Island

Seasonal Demand

Summer is highest, then winter, fall, spring, in both regions

Heating and Cooling Degree Days

Electricity load increases steadily with cooling degree days in both NYC and Long Island, while heating degree days show a weaker pattern. This comparison highlights and helps explain the higher loads observed during summer.

Correlations with Daily Load

Weather variable Long Island NYC
Cooling degree days 0.908 0.854
Heating degree days -0.332 -0.251
Precipitation 0.035 0.061
  • Cooling demand has by far the strongest linear link to load
  • Negative HDD correlation reflects the much larger summer peaks, not an absence of winter demand

Key Takeaways

  • Heat is the strongest weather-related indicator of electricity demand.

    • Temperature: Demand follows a U-shaped pattern, with sharper increases during hotter conditions.

    • Extreme demand: Most high-load outliers occur on hot days.

    • Precipitation: Very weak association with electricity demand.

    • Regional patterns: NYC has higher overall load, but both regions respond similarly to temperature.

Limitations and Next Steps

Limitations

  • Observational: associations, not causation
  • Only three weather stations
  • 7 missing load dates per zone
  • Rain vs. dry ignores intensity and season
  • Pearson correlation misses nonlinear patterns

Next steps

  • More stations, humidity
  • Holidays, population, economic indicators
  • Statistical modeling of how much variation weather explains

Thank You

Questions?

github.com/EllieWilser/Project-3