Girdi verilerini gözden geçirme

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Rami Krispin

Senior Manager, Data Science and Engineering

ABD saatlik elektrik talebi

Yıllara göre mevsimsel eğilimleri gösteren elektrik talebi zaman serisi grafiği

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Mevsimsellik analizi

Saatlik ve günlük düzeyde mevsimselliği gösteren elektrik talebi zaman serisi grafiği

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Otokorelasyon analizi

Günlük ve haftalık gecikmeleri gösteren ACF grafiği

Üretim için Tahmin (Forecasting) Hatları Tasarlama

EIA API'si

EIA Web Sitesi

Üretim için Tahmin (Forecasting) Hatları Tasarlama

EIA API'si

EIA API'si

  • Bu dersi tamamlamak için API anahtarı gerekmez 🎉
1 https://www.eia.gov/opendata/
Üretim için Tahmin (Forecasting) Hatları Tasarlama

EIA API'si

import requests
import pandas as pd
import os






Üretim için Tahmin (Forecasting) Hatları Tasarlama

EIA API'si

import requests
import pandas as pd
import os

api_url = "https://api.eia.gov/v2/"
api_path = "electricity/rto/region-data/"



Üretim için Tahmin (Forecasting) Hatları Tasarlama

EIA API'si

import requests
import pandas as pd
import os

api_url = "https://api.eia.gov/v2/"
api_path = "electricity/rto/region-data/"
get_request = api_url + api_path + "data/&data[]=value"

print(get_request)
https://api.eia.gov/v2/electricity/rto/region-data/data/&data[]=value
Üretim için Tahmin (Forecasting) Hatları Tasarlama

EIA API'si

eia_api_key = os.getenv('EIA_API_KEY')

get_request = get_request + "?api_key=" + eia_api_key
  • eia_api_key kişiseldir ve EIA web sitesinden alınmalıdır
1 https://www.eia.gov/opendata/
Üretim için Tahmin (Forecasting) Hatları Tasarlama

EIA API'si

data = requests.get(get_request).json()
df = pd.DataFrame(data['response']['data'])
Üretim için Tahmin (Forecasting) Hatları Tasarlama

EIA API'si

data = requests.get(get_request).json()
df = pd.DataFrame(data['response']['data'])

print(df.head())
     period           respondent    respondent-name                              value
0    2022-04-06T07    AVA           Avista Corporation                           462894.0    
1    2024-04-06T07    AZPS          Arizona Public Service Company               463663.0    
2    2024-04-07T07    BANC          Balancing Authority of Northern California   464916.0    
3    2024-04-07T07    BPAT          Bonneville Power Administration              459376.0    
4    2024-04-07T07    CAL           California                                   441989.0    
Üretim için Tahmin (Forecasting) Hatları Tasarlama

EIA API'si

EIA API'si

1 EIA API website: https://www.eia.gov/opendata/ 2 EIA API dashboard: https://www.eia.gov/opendata/browser/
Üretim için Tahmin (Forecasting) Hatları Tasarlama

Veri hazırlama

statsforecast ve mlforecast paketleri için veri girişi biçimi:

  1. unique_id - seri kimliği
  2. ds - zaman damgası
  3. y - seri değerleri
df = pd.read_csv("data/data.csv")
ts = df[["period", "value"]]
ts["period"] = pd.to_datetime(ts["period"])
ts = ts.sort_values("period")
Üretim için Tahmin (Forecasting) Hatları Tasarlama

Veri hazırlama

Veri girişi biçimi:

  1. unique_id - seri kimliği
  2. ds - zaman damgası
  3. y - seri değerleri
ts = ts[["period", "value"]]
ts["period"] = pd.to_datetime(ts["period"])
ts = ts.sort_values("period")

ts = ts.rename(columns = {"period": "ds", "value": "y"})
ts["unique_id"] = 1
Üretim için Tahmin (Forecasting) Hatları Tasarlama

Veri hazırlama

print(ts.head())
     ds                     y           unique_id
0    2022-04-06 23:00:00    462894.0    1
1    2022-04-07 00:00:00    463663.0    1
2    2022-04-07 01:00:00    464916.0    1
3    2022-04-07 02:00:00    459376.0    1
4    2022-04-07 03:00:00    441989.0    1
Üretim için Tahmin (Forecasting) Hatları Tasarlama

Haydi pratik yapalım!

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Preparing Video For Download...